Python 填充默认值0';在Pandas中创建数据帧时
我有一个要列出的字符串的输入目录,列表的长度可能不同Python 填充默认值0';在Pandas中创建数据帧时,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个要列出的字符串的输入目录,列表的长度可能不同 d = {'b': [2,3], 'a': [1]} 当我这样做时:df=pd.DataFrame(data=d), 我看到ValueError:数组的长度必须相同 问题:创建df时,如何用默认值(如0)填充缺少的值 创建df的原因是为了获得以下最终结果: {'b':3} 而3是列表中所有数字的最大值。您可以使用设置将定向为索引,因此字典的键用作索引,缺少的值设置为NaN。然后只需使用和转置将键设置为列来填充NaNs: pd.DataFr
d = {'b': [2,3], 'a': [1]}
当我这样做时:df=pd.DataFrame(data=d)
,
我看到ValueError:数组的长度必须相同
问题:创建df时,如何用默认值(如0)填充缺少的值
创建df的原因是为了获得以下最终结果:
{'b':3}
而3
是列表中所有数字的最大值。您可以使用设置将
定向为索引
,因此字典的键用作索引,缺少的值设置为NaN
。然后只需使用和转置将键设置为列来填充NaNs
:
pd.DataFrame.from_dict(d, orient='index').fillna(0).T
b a
0 2.0 1.0
1 3.0 0.0
这将提供以下输出
a b
0 1.0 2
1 NaN 3
您可以针对多种方法研究类似的问题:此外,在创建数据帧之后,您需要
fillna
。创建df后获取最大值3
a b
0 1.0 2
1 NaN 3