Python:Pandas Dataframe AttributeError: 'numpy.ndarray' 对象没有属性 'fillna'

jea*_*elj 7 python attributeerror dataframe pandas

由于我正在创建一个数据框,我不明白为什么会出现数组错误。

M2 = df.groupby(['song_id', 'user_id']).rating.mean().unstack()
M2 = np.maximum(-1, (M - 3).fillna(0) / 2.)  # scale to -1..+1  (treat "0" scores as "1" scores)
M2.head(2)

AttributeError: 'numpy.ndarray' object has no attribute 'fillna'
Run Code Online (Sandbox Code Playgroud)

piR*_*red 6

(M - 3)被解释为numpy.ndarray. 这意味着M被定义为 a numpy.ndarray。通过运行来测试它:

print type(M)
Run Code Online (Sandbox Code Playgroud)


Ked*_*Rao 5

.fillna()您正在numpy 数组上调用该方法。并且numpy数组没有定义该方法。

您可以将numpy数组转换为 apandas.DataFrame然后应用该.fillna()方法。