【发布时间】:2020-07-09 19:38:24
【问题描述】:
我有一个名为“sum_vol”的默认字典,我需要将其转换为数据框:
defaultdict(int,
{2930.0: 2838,
2930.25: 677,
2930.5: 2780,
2931.0: 2005,
2931.75: 1402,
2932.0: 711,
2932.5: 2982,
2931.5: 1500,
2932.75: 7973,
2933.0: 12170,
2933.75: 10009,
2934.5: 49867,
2932.25: 1758....
我尝试先将其转换为列表,但是这一步我已经失败了,因为它切断了第二个值:
strlist = ":".join(str(x) for x in sum_vol)
newdf = pd.DataFrame([x for x in strlist.split(': ')], columns =['close'])
我明白了:
close
0 2930.0
1 2930.25
2 2930.5
3 2931.0
4 2931.75
...
但我想要的输出是:
close vol
0 2930.0 2838
1 2930.25 677
2 2930.5 2780
3 2931.0 2005
4 2931.75 1402
如何将 dict 的第二个值添加到新数据框中的第二列?
【问题讨论】:
-
你可能需要这个,
pd.DataFrame([{"close":k, "vol": v} for k,v in sum_vol.items()]) -
@flynn1973 我试过了,但它不起作用。我收到一个错误:
'str' object has no attribute 'items'