Python Pandas Setting with CopyWarning错误:所有已知解决方案似乎都失败

Python Pandas Setting with CopyWarning错误:所有已知解决方案似乎都失败,python,pandas,dataframe,copy,Python,Pandas,Dataframe,Copy,根据我在中收到的回复和在中找到的清晰解释,我认为我已经解决了所有设置中的CopyWarning错误。不幸的是,它们回来了(Python3.8.5),我非常感谢您的帮助。我的数据帧df有一列“SBPi\u min\u time”,我称之为t\u min t_min 'SBPi_min_time' df.head() SBPi_max_time SBPi_max SBPi_min_time SBPi_min delta_p 0 52.257 119.626

根据我在中收到的回复和在中找到的清晰解释,我认为我已经解决了所有设置中的CopyWarning错误。不幸的是,它们回来了(Python3.8.5),我非常感谢您的帮助。我的数据帧
df
有一列
“SBPi\u min\u time”
,我称之为
t\u min

  t_min
'SBPi_min_time'

df.head()
   SBPi_max_time  SBPi_max  SBPi_min_time  SBPi_min  delta_p
0         52.257   119.626         55.903   111.256    8.370
1         59.513   118.580         60.562   114.395    4.185
2         62.632   119.626         63.650   112.999    6.627
3         65.721   121.021         67.279   114.395    6.626
4         69.344   120.672         72.414   113.348    7.324
如果我现在尝试将一个值从
df
的一行复制到前一行,我会得到臭名昭著的设置WithCopyWarning。我已经尝试了5种不同的方法,并且在每种情况下都得到了错误。值得注意的是,第一种方法是我在发布链接的帖子中推荐的方法:

df.iloc[i, df.columns.get_loc('SBPi_min_time')] = df.iloc[i+1, df.columns.get_loc('SBPi_min_time')]
df.iloc[i, df.columns.get_loc(t_min)] = df.iloc[i+1, df.columns.get_loc(t_min)]
df.iloc[i, 3] = df.iloc[i+1, 3]
df[t_min].iloc[i] = df[t_min].iloc[i+1]
df[t_min][i] = df[t_min][i+1]
如果有一种方法可以从
df[t_min][i+1]
创建一个新对象(在本例中为浮点),我可以这样做,然后将
df[t_min][i]
设置为它,但似乎没有一种方法可以这样做:

df_copy = df.copy(deep = True)
df[t_min][i] = df_copy[t_min][i+1]
给了我同样的错误。我到底做错了什么,怎么解决

非常感谢


托马斯·飞利浦(Thomas Philips)

这只是一个警告——我会忽略它,我很乐意这样做,除非我一直担心某处出了问题。考虑到操作的普遍性,这肯定有一个每次都能可靠工作的解决方案?是否有可能看到完整的代码?这是否回答了您的问题?也请看&这只是一个警告——我会忽略它,我很乐意这样做,但我总是担心某处出了问题。考虑到操作的普遍性,这肯定有一个每次都能可靠工作的解决方案?是否有可能看到完整的代码?这是否回答了您的问题?也看到&