我想在pandas.df中设置数字符号的值。我在Set values on the diagonal of pandas.DataFrame上遵循了答案
df.values[[np.arange(df.shape[0])] * 2] = 0的解决方案很好。
但是我希望使用np.fill_diagonal(df.values, 0),它给出了AttributeError:'DataFrame‘对象没有属性’平面‘
发布于 2019-04-04 09:10:14
我也有这个问题,但当我意识到np.fill_diagonal() works in-place时,它就解决了。
np.fill_diagonal(df,0)给了我您描述的AttributeError:,np.fill_diagonal(df.values,0)返回了None,所以如果您执行如下操作:
df_zeros = np.fill_diagonal(df.values,0)
print(df_zeros)或者尝试在其他地方使用结果,但是如果您这样做了:
np.fill_diagonal(df.values,0)
print(df)我想你会看到你在找什么。
https://stackoverflow.com/questions/52755516
复制相似问题