我有一个遵循这种格式的列表:
a=['date name','10150425010245 name1','10150425020245 name2']
我正在尝试将其转换为 Pandas df:
newlist=[]
for item in a:
newlist.append(item.split(' '))
现在,将其转换为 df:
pd.DataFrame(newlist)
结果
0 1
0 date name
1 10150425010245 name1
2 10150425020245 name2
我想将“日期”和“姓名”作为标题,但我做不到。有没有比这更有效的自动将字符串列表转换为数据框的方法?
最佳答案
这是一种方法。
使用列表理解而不是循环。
In [160]: data = [x.split('') for x in a]
In [161]: data
Out[161]: [['date', 'name'], ['10150425010245', 'name1'], ['10150425020245', 'name2']]
然后使用 data[1:]
作为值,使用 data[0]
作为列名。
In [162]: pd.DataFrame(data[1:], columns=data[0])
Out[162]:
date name
0 10150425010245 name1
1 10150425020245 name2
关于Python 列表到 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29882965/