我有字典d:
d = dict({'foo': ['a', 'b', 'c'], 'bar': ['d', 'e', 'f']})
我将如何获得如下所示的数据框:
+-----+--------+
| Key | Values |
+-----+--------+
| foo | a |
+-----+--------+
| foo | b |
+-----+--------+
| foo | c |
+-----+--------+
| bar | d |
+-----+--------+
| bar | e |
+-----+--------+
| bar | f |
+-----+--------+
这不能回答我的问题:将值作为字典的字典作为pandas dataframe frame的列表
您可以这样做:
import pandas as pd
d = {'foo': ['a', 'b', 'c'], 'bar': ['d', 'e', 'f']}
df = pd.DataFrame([[key, value] for key, values in d.items() for value in values], columns=['keys', 'values'])
print(df)
输出量
keys values
0 foo a
1 foo b
2 foo c
3 bar d
4 bar e
5 bar f
作为替代方案,您可以使用explode:
df = pd.DataFrame({'keys': list(d.keys()), 'values': list(d.values())}).explode('values').reset_index(drop=True)
print(df)
输出量
keys values
0 foo a
1 foo b
2 foo c
3 bar d
4 bar e
5 bar f
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句