我有一个简单的pandas数据框,有两列。我想生成这两列的嵌套列表。
geo = pd.DataFrame({'lat': [40.672304, 40.777169, 40.712196],
'lon': [-73.935385, -73.988911, -73.957649]})
我对此问题的解决方案如下:
X = [[i] for i in geo['lat'].tolist()]
Y = [i for i in geo['lon'].tolist()]
for key, value in enumerate(X):
X[key].append(Y[key])
然而,我觉得必须有比这更好的方法。
谢谢!
答案 0 :(得分:1)
pandas
建立在numpy
之上。 DataFrame
将values
存储在numpy
数组中,该数组具有tolist
方法。
>>> geo = pd.DataFrame({'lat': [40.672304, 40.777169, 40.712196],
...: 'lon': [-73.935385, -73.988911, -73.957649]})
...:
>>> geo.values
>>>
array([[ 40.672304, -73.935385],
[ 40.777169, -73.988911],
[ 40.712196, -73.957649]])
>>>
>>> geo.values.tolist()
[[40.672304, -73.935385], [40.777169, -73.988911], [40.712196, -73.957649]]
答案 1 :(得分:0)
怎么样
out_list = []
for index, row in geo.iterrows():
out_list.append([row.lat, row.long])