如何填写数据框

2024-06-17 14:57:24 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能告诉我如何填写我的数据帧丢失的值吗?缺少的值不会显示为NaN或任何常见值,而是显示为两个点,如。。我该如何用他们所在的那一行的平均值来填充他们呢

                     1971     1990     1999     2000     2001     2002

Estonia                ..     17.4      8.3      8.5      8.5      8.6 
Spain                61.6    151.2    205.9    222.2    233.2    241.6 
SlovakRepublic       10.9     25.5     28.1     30.8     31.9     32.2   
Slovenia               ..     12.4     13.3     13.6     14.5     14.6  

我的标题是年份,指数是国家


Tags: 数据标题国家nan指数平均值年份spain
2条回答

您应该能够使用.set\u值

try df \u name.set \u value('索引','列',值)

像这样的

df_name.set_value('Estonia','1971', 50)

似乎可以使用^{},比较由^{}创建的numpy array,替换为mean,最后将所有列强制转换为float

print (df.mean(axis=1))
Estonia            10.26
Spain             210.82
SlovakRepublic     29.70
Slovenia           13.68

df = df.mask(df.values == '..', df.mean(axis=1), axis=0).astype(float)
print (df)
                 1971   1990   1999   2000   2001   2002
Estonia         10.26   17.4    8.3    8.5    8.5    8.6
Spain            61.6  151.2  205.9  222.2  233.2  241.6
SlovakRepublic   10.9   25.5   28.1   30.8   31.9   32.2
Slovenia        13.68   12.4   13.3   13.6   14.5   14.6

相关问题 更多 >