首页 > 解决方案 > 'DataFrame' 对象没有属性 'col' 错误

问题描述

前 2 行循环有效,但最后一行 df[col] 出错。我得到“DataFrame”对象没有属性“col”错误

   df = pd.DataFrame([(.2, np.nan,), (.0, .6, 2), (.6, .0, 1), (.2, .1, 1 )],
                  columns=['dogs', 'cats','monkeys'])

corr=df.corr(method='pearson')

for col in corr.columns:
    print ('col:', col)
    print(df[col])
    df[col]=df[col].fillna(corr.col.mean())

标签: pythonpandas

解决方案


用于[col]按变量选择列:

for col in corr.columns:
    print ('col:', col)
    print(df[col])
    df[col]=df[col].fillna(corr[col].mean())

更好和更简单的解决方案是传递meanDataFrame.fillna

df = df.fillna(df.corr(method='pearson').mean())

推荐阅读