2733073500 发表于 2023-5-12 18:52:31

fillna使用求助

大佬们,我这里的fillna(inputs.mean())在Jupiter上能使用但是会警告,在pycharm上就会因为第2列是str类型数据而报错,如果我想在pycharm上做到jupyter上一样的效果,该怎么办呢

数据inputs:
        Num        Alley        Price
0        NaN        Pave        127500
1        2.0        NaN        106000
2        4.0        NaN        178100
3        NaN        NaN        14000
代码:
inputs = inputs.fillna(inputs.mean())

jupyter上的结果:
        Num        Alley        Price
0        3.0        Pave        127500
1        2.0        NaN        106000
2        4.0        NaN        178100
3        3.0        NaN        14000

在pychar就会报错

isdkz 发表于 2023-5-12 18:52:45

问题在于fillna()函数默认只能对数值型数据进行填充,而你的数据中存在字符串类型的列。因此,在使用fillna()函数之前,需要对数据进行一些处理,将字符串类型的列去掉,只保留数值型的列。可以使用以下代码进行处理:

inputs_numeric = inputs.select_dtypes(include=) # 只选择数值型的列
inputs = inputs.fillna(inputs_numeric.mean()) # 对数值型数据进行填充

这样就可以在pycharm上实现和jupyter上一样的效果了。

2733073500 发表于 2023-5-12 18:57:49

isdkz 发表于 2023-5-12 18:52
问题在于fillna()函数默认只能对数值型数据进行填充,而你的数据中存在字符串类型的列。因此,在使用fillna ...

多谢大佬,来的太快了{:5_106:}

isdkz 发表于 2023-5-12 19:01:24

2733073500 发表于 2023-5-12 18:57
多谢大佬,来的太快了

不客气{:5_109:}

歌者文明清理员 发表于 2023-5-12 19:05:05

isdkz 发表于 2023-5-12 19:01
不客气

{:10_334:}

liuhongrun2022 发表于 2023-5-13 09:32:12

歌者文明清理员 发表于 2023-5-12 19:05


{:10_334:}
页: [1]
查看完整版本: fillna使用求助