嗨,Stack Overflow社区!
我有一个数据框,其中包含两列UTM坐标(“ X”和“ Y”),如以下屏幕截图所示:
我一直在尝试将这两列转换并替换为经度和纬度,如下所示:
Longitude Latitude 1.601554 42.546245 53.847818 23.424076 67.709953 33.93911 ... and so on
这是我使用的代码:
def rule(row): lat, lon = utm.to_latlon(row["X"], row["Y"]) return pd.Series({"lat": lat, "long": long}) df.merge(df.apply(rule, axis=1), left_index= True, right_index= True)
仅供参考,要导入 utm ,我已经使用Terminal安装了utm 0.4.2。
但是,当我运行代码时,它一直给我以下类型错误:
我真的是数据科学和Python的新手,所以很难弄清楚自己做错了什么。.:'(
任何帮助或建议将不胜感激!
答案 0 :(得分:1)
如果查看documentation for utm,您会注意到to_latlon
带有四个必需的参数。您只给了它两个(纬度和经度),所以缺少了Zone Number
(在错误中看到)加上Zone Letter
。