在
SettingWithCopyWarning被创造的标志可能造成混淆的“链接”的任务,比如下面这并不总是如预期的工作,特别是当第一选择返回一个副本。[ 有关背景讨论,请参见GH5390和GH5597。]
df[df['A'] > 2]['B'] = new_val # new_val not set in df
该警告提出了如下重写建议:
df.loc[df['A'] > 2, 'B'] = new_val
但是,这不适合您的用法,相当于:
df = df[df['A'] > 2]df['B'] = new_val
很明显,您不必在意将其写回到原始帧的写 *** 作(因为您重写了对它的引用),但不幸的是,这种模式无法与第一个链式分配示例区分开,因此(误报)警告。如果您想进一步阅读,可能会在建立索引的文档中解决误报的可能性。您可以通过以下分配安全地禁用此新警告。
pd.options.mode.chained_assignment = None # default='warn'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)