用Python讲述:地理“经纬度”数据的4种转换方法!
Python实战社群
Java实战社群
长按识别下方二维码,按需求添加
扫码关注添加客服
进Python社群▲
扫码关注添加客服
进Java社群▲
作者丨黄伟呢
来源丨数据分析与统计学之美
关于“度、分、秒”的印象,我还是停留在初、高中的印象,因为那个时候学习过他们之间的数学转换。今天突然被问及,因此我将其整理出来,供大家学习。
在数学中,表示角度的度、分、秒分别使用°、′、″等符号进行表示。度与分,分与秒之间一律采用六十进制,它们的换算关系如下:
1°=60′ 1°=3600″ 1′=60″
接下来,我们利用群友提供的数据,来完成“度、分、秒”数据转“度”的操作,数据截图如下。
拿到这个需求,我随手就写出来了2种解决办法。但是最终在群友小小明(人称“明佬”)的修改和完善下,最后提供了四种解决办法。
① 方法一:series的apply()函数
import re
import pandas as pddf = pd.read_csv("t.txt", index_col=0)
df.columns = ["经纬度数据"]
def func(s):arr = re.findall("\d+", s)return int(arr[0])+int(arr[1])/60+int(arr[2])/3600df["final"] = df["经纬度数据"].apply(func)
df
② 方法二:series中str属性的split()方法
import re
import pandas as pddf = pd.read_csv("t.txt", index_col=0)
df.columns = ["经纬度数据"]
tmp = df["经纬度数据"].str.split("°|′|″", expand=True).values[:, :3].astype(int)
df["final"] = tmp[:, 0] + tmp[:, 1]/60 + tmp[:, 2]/3600
df
③ 方法三:series中str属性的extract()方法
import re
import pandas as pddf = pd.read_csv("t.txt", index_col=0)
df.columns = ["经纬度数据"]
tmp = df["经纬度数据"].str.extract("(\d+)°(\d+)′(\d+)″").values.astype(int)
df["final"] = tmp[:, 0] + tmp[:, 1]/60 + tmp[:, 2]/3600
df
④ 方法四:series中str属性的extractall()方法
import re
import pandas as pddf = pd.read_csv("t.txt", index_col=0)
df.columns = ["经纬度数据"]
tmp = df["经纬度数据"].str.extractall("(\d+)").unstack().values.astype(int)
df["final"] = tmp[:, 0] + tmp[:, 1]/60 + tmp[:, 2]/3600
df
程序员专栏 扫码关注填加客服 长按识别下方二维码进群
近期精彩内容推荐:
几句话,离职了
中国男性的私密数据大赏,女生勿入!
为什么很多人用“ji32k7au4a83”作密码?
一个月薪 12000 的北京程序员的真实生活 !
在看点这里好文分享给更多人↓↓
用Python讲述:地理“经纬度”数据的4种转换方法!相关推荐
- python csv库,Python 中导入csv数据的三种方法
Python 中导入csv数据的三种方法,具体内容如下所示: 1.通过标准的Python库导入CSV文件: Python提供了一个标准的类库CSV文件.这个类库中的reader()函数用来导入CSV文 ...
- python 行情数据,拼多多股票:Python获取股票行情数据的一种方法
Python获取股票行情数据的一种方法 拼多多股票 本号帮大家找了一个可免费获取股票行情数据的接口. Tushare社区目前主要维护新版本:tushare pro,数据更稳定拼多多股票质量更高,可获取 ...
- Python 生成随机经纬度数据
Python 生成随机经纬度 Description: python 自动生成经纬度, 该脚本适用于python3, 如果是python2请把# from __future__ import divi ...
- python websocket爬虫_详解python websocket获取实时数据的几种常见链接方式
第一种, 使用create_connection链接,需要pip install websocket-client (此方法不建议使用,链接不稳定,容易断,并且连接很耗时) import time f ...
- discard connection丢失数据_python kafka 生产者发送数据的三种方式
python kafka 生产者发送数据的三种方式 发送方式 同步发送 发送数据耗时最长 有发送数据的状态,不会丢失数据,数据可靠性高 以同步的方式发送消息时,一条一条的发送,对每条消息返回的结果判断 ...
- 下载地图包,并基于python的pyshp库读取.shp数据来获取中国省界的经纬度数据
目前画地图的软件都能很方便的调用省界数据,但是如果想要单独对省界做一些个性化设置,如设置宽度.样式.颜色什么的,就需要将省界数据单独拿出来进行设置了. 软件在画地图时,描述的边界都是一些列经纬度格点的 ...
- python数据展示平台_Python获取各大地图平台经纬度数据,哪家的数据最准确?
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于菜J学Python ,作者J哥 前言 不知道大家会在什么场合使用地图 ...
- 用Python分析经纬度数据
不知道大家会在什么场合使用地图可视化,对我来说地图可视化的优点除了它可以展示海量的位置数据,更重要的是它可以很酷很炫,给人一种赏心悦目的舒适感.如下是J哥做的一个简单热力图: 热力地图 制作此类可视化 ...
- python获取地图上经纬度_Python获取各大地图平台经纬度数据,哪家的数据最准确?...
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于菜J学Python ,作者J哥 前言 不知道大家会在什么场合使用地图 ...
- Python pyecharts地理数据可视化 绘制地理图表
很喜欢的一句话 为什么有些人明明看起来友善 却总是喜欢独来独往 " 待人友善是修养,独来独往是性格 " 文章目录 一.Pyecharts简介和安装 1. 简介 2. 安装 二.绘制 ...
最新文章
- iOS 直播专题5-推流
- webpack 优化笔记
- mysql oracle查询速度慢_oracle查看执行最慢与查询次数最多的sql语句
- 打算尝试瑜伽,看是否能解决长期困扰的胃痛问题
- python之路day04--列表的增删改查,嵌套、元组的嵌套、range、for循环嵌套
- nginx 的 proxy_cache 缓存配置
- js 打印数组_Node.js系列二 - Node基础知识
- DirectX9:先导篇 图形学基础
- Ubuntu18.04 orb-slam3编译出现的错误 undefined reference to symbol ‘_ZN3MPI8Datatype4FreeEv‘ libmpi_cxx.so
- ExtJs4学习(一):正确认识ExtJs4
- Oracle数据库恢复删除数据的方法
- cordova build时出错Minimum supported Gradle version is 5.4.1. Current version is 4.10.3
- e4a浏览框本地HTML,E4A浏览器 · E4A易安卓中文开发教程-E4A社区 · 看云
- finalshell链接不上虚拟机提示一直登录或链接不上怎么办
- N阶幻方入门算法及图解
- I/O Request Packet
- 支付宝服务商第三方代发布小程序
- 音乐原唱伴唱卡拉ok模式解决!
- python可视化图表生成(二)
- 俞敏洪的演讲 看后很受感触