我正在尝试在 python 中运行 fillna 命令。它根本无法用任何东西替换 Nan 值,并且它不返回错误。
import pandas as pd
import io
import requests
import numpy as np
url='https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data'
s=requests.get(url).content
df=pd.read_csv(io.StringIO(s.decode('utf-8')))
df.columns=['Scn', 'A2', 'A3', 'A4', 'A5', 'A6', 'A7', 'A8', 'A9', 'A10', 'CLASS']
df.to_csv("wisconsinbreast.csv")
m,n=df.shape
#print(m,n)
df = df.replace('?', np.nan)
#print(df)
#print(df.mean())
print(df.fillna(df.mean()))
在第 22 行,Nan 还在。我已经通过在这里搜索问题完成了所有我能找到的事情,但这甚至没有给我反馈为什么它失败了。据我了解,df.mean 应该在没有 Nan 值的情况下计算,但 df.mean 不会返回包含 Nan 的列的值。