如何使用Python从地理数据中提取x,y和z坐标? [英] How can I extract x, y and z coordinates from geographical data by Python?

查看:503
本文介绍了如何使用Python从地理数据中提取x,y和z坐标?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有包含14个变量的地理数据.数据采用以下格式:

I have geographical data which has 14 variables. The data is in the following format:

QUADNAME:rockport_colony_SD解决方案:10 ULLAT:43.625
ULLON:-97.87527466 LRLAT:43.5
LRLON:-97.75027466 HDATUM:27
ZMIN:361.58401489 ZMAX: 413.38400269 ZMEAN:396.1293335 ZSIGMA:12.36359215 PMETHOD:5
QUADDATE:20001001

QUADNAME: rockport_colony_SD RESOLUTION: 10 ULLAT: 43.625
ULLON: -97.87527466 LRLAT: 43.5
LRLON: -97.75027466 HDATUM: 27
ZMIN: 361.58401489 ZMAX: 413.38400269 ZMEAN: 396.1293335 ZSIGMA: 12.36359215 PMETHOD: 5
QUADDATE: 20001001

整个数据序列中都有许多先前的变量.

The whole data has many previous variables in the sequence.

如何从数据中提取坐标ULLAT,ULLON和LRLAT到三个列表中,以便每一行对应一个位置?

How can I extract the coordinates ULLAT, ULLON and LRLAT from the data into three lists, so that the each row corresponds to one location?

此问题是由推荐答案

如果数据全部在一个大的纯文本文件中,则类似的事情可能会起作用:

Something like this might work if the data is all in a big flat text file:

import re

data = """
QUADNAME: rockport_colony_SD RESOLUTION: 10 ULLAT: 43.625
ULLON: -97.87527466 LRLAT: 43.5
LRLON: -97.75027466 HDATUM: 27
ZMIN: 361.58401489 ZMAX: 413.38400269 ZMEAN: 396.1293335 ZSIGMA: 12.36359215 PMETHOD: 5
QUADDATE: 20001001
"""

regex = re.compile(
    r"""ULLAT:\ (?P<ullat>-?[\d.]+).*?
    ULLON:\ (?P<ullon>-?[\d.]+).*?
    LRLAT:\ (?P<lrlat>-?[\d.]+)""", re.DOTALL|re.VERBOSE)

print regex.findall(data) # Yields: [('43.625', '-97.87527466', '43.5')]

这篇关于如何使用Python从地理数据中提取x,y和z坐标?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆