Mar*_*isa 3 python list dataframe pandas
假设我有以下列表:
list1 = [{'a': 1}, {'b': 2}, {'c': 3}]
我想将其转换为具有两列的熊猫数据框:一列用于键,一列用于值。
keys values
0 'a' 1
1 'b' 2
2 'c' 3
Run Code Online (Sandbox Code Playgroud)
为此,我尝试使用pd.DataFrame(list1)and pd.DataFrame.from_records(list1),但是,在这两种情况下,我都得到了一个数据框,如:
a b c
0 1.0 NaN NaN
1 NaN 2.0 NaN
2 NaN NaN 3.0
Run Code Online (Sandbox Code Playgroud)
有什么方法可以指定我想要什么?通过研究,我只能找到我上面描述的方式。
使用list comprehension与扁平化的元组的列表:
df = pd.DataFrame([(i, j) for a in list1 for i, j in a.items()],
columns=['keys','values'])
print (df)
keys values
0 a 1
1 b 2
2 c 3
Run Code Online (Sandbox Code Playgroud)
详情:
print ([(i, j) for a in list1 for i, j in a.items()])
[('a', 1), ('b', 2), ('c', 3)]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2142 次 |
| 最近记录: |