我正在处理缺少值的数据集。数据集的标题如下:
1:0.2 2:0.7 3:-1.2 4:0.5
1:0.9 3:0.1 4:0.8
1:-0.1 2:0.1 4:1.0
2:0.6 3:-1.0
冒号前面的数字是要素的索引。在某些行中可以看到,缺少某些功能。因此,当我使用以下代码导入数据时,
df = pandas.read_csv('dataset',header=None,sep = '\s+|:',engine='python')
我得到的数据框看起来像这样:
0 1 2 3 4 5 6 7
0 1.0 0.2 2.0 0.7 3.0 -1.2 4.0 0.5
1 1.0 0.9 3.0 0.1 4.0 0.8 NaN NaN
2 1.0 -0.1 2.0 0.1 4.0 1.0 NaN NaN
3 2.0 0.6 3.0 -1.0 NaN NaN NaN NaN
我想在正确的位置将NaN替换为0。但是,如果我使用df.fillna(0)
,我将在每行末尾替换NaN。我真正想要的是一个数据框,看起来像这样,
0 1 2 3 4 5 6 7
0 1.0 0.2 2.0 0.7 3.0 -1.2 4.0 0.5
1 1.0 0.9 0.0 0.0 3.0 0.1 4.0 0.8
2 1.0 -0.1 2.0 0.1 0.0 0.0 4.0 1.0
3 0.0 0.0 2.0 0.6 3.0 -1.0 0.0 0.0
答案 0 :(得分:0)
您可以使用cd /Library/Developer/CommandLineTools/Packages/
open .
模块来构建字典列表,然后将其馈送到csv
构造函数中。最后,使用pd.DataFrame
用fillna
填充空值。
0