给出如下列表:
l = [['43.195', '-22.17', '-43.17', '-22.198', '-43.198', '22.197'], ['43.196', '-22.14', '-43.179', '-22.188', '-43.188', '22.192']]
我需要将此列表中的值添加到数据框的两个单独列中。示例: l 的子列表索引甚至(l [0] [0], l [0] [2], l [1] [0], etc.)
进入LATITUDE
列的值;和 l 的子列表的索引为奇数的值(l [0] [1], l [0] [3], l [1] [1], etc.)
,转到该LONGITUDE
列。数据框已经存在,但LATITUDE
和LONGITUDE
列不存在。
我正在尝试以下操作,但未成功:
d = pd.DataFrame()
i = 0
j = 0
if i < len(l):
if j < len(l[i]) and j%2==0:
d['LATITUDE'] = ', '.join(map(str, l[i][j]))
j += 1
elif j < len(l[i]) and j%2!=0:
d['LONGITUDE'] = ', '.join(map(str, l[i][j]))
j+=1
i += 1
d
注意:每个子列表对应 Dataframe 的一个实例。
预期输出:
LATITUDE | LONGITUDE
'-43.195', '-43.17', -43.198 | '-22.17', '-22.198', '-22.197'
'-43.196', '-43.179', -43.192 | '-22.14', '-22.188', '-22.192'
这将使用 reshape
pd.concat([pd.Series([x[::2],x[1::2]]).str.join(sep=',') for x in l],1).T
Out[280]:
0 1
0 43.195,-43.17,-43.198 -22.17,-22.198,22.197
1 43.196,-43.179,-43.188 -22.14,-22.188,22.192
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句