У меня тоже была эта проблема, но я решил ее, когда понял, что np.fill_diagonal()
работает на месте .
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)
Я думаю, что выпосмотрим, что вы ищете.