尝试使用df.loc[:,'new column'] = value 正如 piRSquared 的评论所说, df 可能是另一个 DataFrame 的副本,并且当您将值设置为 df 时,它可能会发生所谓的链式索引。 有关详细信息,请参阅 pandas 文档。
df.is_copy = None
或者df = df.copy()
的方式。当然还有其他处理方式,我通常喜欢采用这种方式来确保我不会再看到这个警告:当我从其他来源创建"df"时,我通常会使用df = other_df.loc[:, :]
的方式,使用"loc"将其分离。而df = other_df[my_cols]
则不行。 - piRSquared