我需要创建一个新的数据框,其中包含来自现有df的特定列。我的代码运行正确,但我得到设置与copywarning。我研究过这个警告,我明白它为什么存在(如:连锁作业)。我也知道你可以简单地关闭警告。
但是,我的问题是,使用现有数据帧中的特定列创建新数据帧的正确方法是什么,以避免出现此警告。我不想简单地关闭警告,……因为我认为有一个更好的(更Python)方式来做这件事,而不是我目前的做法。换句话说,我想要一个全新的数据框架,我不想只复制所有的列。
下面的代码将现有数据帧传递给函数(removeBrokenRule)。将创建新的数据帧,其中仅包含来自现有df的4列。然后我对新的测向仪执行某些操作并将其返回。newdf = removeBrokenRule('Forgot rules', df)
def removeBrokenRule(rule, df):
newdf = df[['Actual ticks', 'Broken Rules', 'Perfect ticks', 'Cumulative Actual']]
newdf['Actual ticks'][newdf['Broken Rules'] == rule] = newdf['Perfect ticks']
newdf['New Curve'] = newdf['Actual ticks'].cumsum()
return newdf
非常感谢。