繁体   English   中英

在 pandas dataframe 中将度分秒 (DMS) 列转换为十进制度

[英]Converting degree minute second (DMS) columns to decimal degrees in pandas dataframe

我有一个如下所示的数据框,想将度、分、秒格式的纬度和经度列转换为十进制度,并希望更新表与其他列

任何帮助,将不胜感激

在此处输入图像描述

这是使用apply的相关代码, lambda处理 dataframe 的每一行并创建一个新列lat_decimal来包含结果。

# Create dataframe
d6 = {'id':['a1','a2','a3'], 
      'lat_deg': [10, 11, 12],
      'lat_min': [15, 30, 45],
      'lat_sec': [10, 20, 30]
    }
df6 = pd.DataFrame( data=d6 )

df6["lat_decimal"] = df6[["lat_deg","lat_min","lat_sec"]].apply(lambda row: row.values[0] + row.values[1]/60 + row.values[2]/3600, axis=1)

由此产生的 dataframe:-

   id  lat_deg  lat_min  lat_sec  lat_decimal
0  a1       10       15       10    10.252778
1  a2       11       30       20    11.505556
2  a3       12       45       30    12.758333

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM