我有一个带有'geometry'列的Geodataframe,其中有点几何,例如要点(-0.01334 51.52883)。我需要提取经度和纬度,并将其添加为数据框中的新列。
我尝试使用
df['lon'] = df['geometry'].x df['lat'] = df['geometry'].y
但是它给了我一个SettingWithCopyWarning,我不确定为什么。有人可以帮忙吗?谢谢!
考虑到值是按(lat lon)所述格式的字符串,您可以先替换括号以更好地查看。
(lat lon)
df["geo"] = df["geo"].str.replace(r"[\(\)", "")
之后,您可以在中间按空格字符分开并扩展列。 str.split doc
df = df["geo"].str.split(" ", expand=True)
您将得到两列0和1,只需要在那之后重命名它们即可。