我找到了找到此代码的另一个主题:
utm15_wgs84 = pp.Proj(init='epsg:3575')
df[['wgs_x', 'wgs_y']] = df.apply(lambda row:utm15_wgs84(row['Lat'],
row['Long'], inverse=True), axis=1).apply(pd.Series)
我的df(输入):
Lat, Long
415634,-0625511.4
实际上,这些坐标是:41 56 34 N and 062 55 11.4 W
我需要将它们转换为十进制度格式
预期输出应为: 使用计算:
41+56/60+34/3600 ,-( 62+55/60+11.4/3600 )
Lat, Long
41.9427777777778,-62.9198333333333
使用上面我收到的代码
结果:
Lat, Long
44.622697, 82.973245
错了; /
我试图更改init='epsg:4326'
和init='epsg:3575'
,但效果仍然很差。
像INPUT中那样转换坐标以获得预期结果的最佳方法是什么?
答案 0 :(得分:0)
您没有告诉我们pp
或df
是什么,因此从技术上讲,我们不知道您的代码是做什么的。
但是,假设pp
是pyproj,我相信它无法完成您想要的操作(尽管我可能错了)。您只需要自己进行六进制转换。在不知道程序其余部分是什么样的情况下,很难确切地说出如何,但是我的赌注是将坐标作为文本字符串读取,使用常规的文本切片运算符切掉各个部分,将它们转换为数字并执行d + m / 60 + s / 3600的计算结果。