我是python的新手,任何帮助都将不胜感激!
我的数据框有一列坐标:
gridReference
(190000, 200000)
(560000, 250000)
(560000, 250000)
(560000, 250000)
(560000, 250000)
(560000, 250000)
(320000, 80000)
我还有一个将坐标转换为lat长位的函数
toConvert(E,N)
- 我正在尝试研究如何遍历gridReference列并将值作为参数输入到toConvert函数中,然后在另一个数据帧中生成新的Lat-Lon坐标。
希望有意义 - 提前谢谢!
答案 0 :(得分:0)
直接回答你的问题,你可以做到
f = lambda x: toConvert(x[0],x[1])
df['gridReference'].map(f)
但实际上为什么你需要一个Pandas DataFrame呢?您可以使用元组列表或元组元组执行相同操作,性能应该相同。 我相信由元组组成的列是对象类型,不是由Numpy处理的。更重要的是,你的功能没有矢量化。您可以使用numba对其进行矢量化(请参阅link)。
所以你可以通过使用built-in function map来实现相同的目标:
map(df['gridReference'].values, f)