我有一个带lat/lon坐标的数据框
latlon
(51.249443914705175, -0.13878830247011467)
(51.249443914705175, -0.13878830247011467)
(51.249768239976866, -2.8610415615063034)
...
Run Code Online (Sandbox Code Playgroud)
我想将这些绘制到Folium地图上,但我不确定如何遍历每一行.
任何帮助将不胜感激,提前致谢!
我确信这是一件简单的事情,但我是 Python 新手,无法解决!
我有一个包含坐标的列的数据框,我想删除括号并将纬度/经度值添加到单独的列中。
当前数据框:
gridReference
(56.37769816725615, -4.325049868061924)
(56.37769816725615, -4.325049868061924)
(51.749167440074324, -4.963575226888083)
Run Code Online (Sandbox Code Playgroud)
想要的数据框:
Latitude Longitude
56.37769816725615 -4.325049868061924
56.37769816725615 -4.325049868061924
51.749167440074324 -4.963575226888083
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助
编辑:我试过:
df['lat'], df['lon'] = df.gridReference.str.strip(')').str.strip('(').str.split(', ').values.tolist()
但我收到错误:
AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
然后我尝试添加:
df['gridReference'] = df['gridReference'].astype('str')
并得到错误:
ValueError: too many values to unpack (expected 2)
任何帮助将不胜感激,因为我不知道如何使这项工作!:)
编辑:
我不断收到错误
AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
df.dtypes 的输出是:
<class 'pandas.core.frame.DataFrame'>
Int64Index: …
我有一个元组列表(在这种情况下是纬度和经度的坐标)
[(51.69768233153901, -5.039923897568534),
(52.14847612092221, 0.33689512047881015),
(52.14847612092221, 0.33689512047881015),
....]
Run Code Online (Sandbox Code Playgroud)
我试图将它们分成两个单独的列表(一个用于纬度,一个用于经度)
我无法解决如何循环将它们添加到列表中,到目前为止我有:
lat = latlon_df.at[0,'LatLon'][0]
lon = latlon_df.at[0,'LatLon'][1]
Run Code Online (Sandbox Code Playgroud)
它标识了每个中的第一个.有人可以告诉我如何创建2个新列表?
谢谢你的帮助!