如何在 python 3 中删除此警告
Posted
技术标签:
【中文标题】如何在 python 3 中删除此警告【英文标题】:how to remove this warning in python 3 【发布时间】:2018-12-22 21:08:17 【问题描述】:尝试使用 panda 在 python 3 中降低和剥离一列,但收到警告 - 正确的方法是什么,因此不会出现此警告
df["col1"] = df[["col1"]].apply(lambda x: x.str.strip())
df["col1"] = df[["col1"]].apply(lambda x: x.str.lower())
警告
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
self[k1] = value[k2]
如何消除警告
【问题讨论】:
我猜df_rounds_clean
是另一个数据帧的子集?
您是否阅读了警告链接到的文档章节?问题是这实际上不适用于您的情况,所以您想禁止警告,还是它确实适用,所以您想知道如何解决它,或者您不理解它?
Confusion re: pandas copy of slice of dataframe warning的可能重复
您是否按照警告中的说明进行操作?
【参考方案1】:
要消除此警告,请将其应用于系列而不是数据框。使用 df[["col1"]]
创建一个新的数据框,然后将其设置为列。如果您只是修改列就可以了。此外,我将两者链接在一起。
df["col1"] = df["col1"].str.strip().str.lower()
【讨论】:
以上是关于如何在 python 3 中删除此警告的主要内容,如果未能解决你的问题,请参考以下文章
在 C 中,如何修复此警告:格式“%s”需要“char *”类型的参数,但参数 3 的类型为“char (*)[100]
如何修复 Xcode 7.3 警告:`init` 已弃用:它将在 Swift 3 中删除:在序列上使用`enumerate()` 方法 [重复]
如何从 didRegisterForRemoteNotificationsWithDeviceToken 函数 ios swift 3 中删除几乎匹配的可选要求警告?