Python 无法使用设置WithCopyWarning用新值更新列
我一直在尝试用更新pandas dataframe中现有的列。我正在使用Python 无法使用设置WithCopyWarning用新值更新列,python,pandas,Python,Pandas,我一直在尝试用更新pandas dataframe中现有的列。我正在使用 pd.to_datetime(ShortCSV['Date TIme'] 然后我想更新同一列shortsv['Date-TIme'],所以我这样做了 ShortCSV['Date TIme'] = pd.to_datetime(ShortCSV['Date TIme']) 但是我用copywarning来设置 我有点明白为什么我们需要使用.loc,但在我的情况下,我没有一个条件,以满足更新列。那我该怎么做呢?有什么想法
pd.to_datetime(ShortCSV['Date TIme']
然后我想更新同一列shortsv['Date-TIme'],所以我这样做了
ShortCSV['Date TIme'] = pd.to_datetime(ShortCSV['Date TIme'])
但是我用copywarning来设置
我有点明白为什么我们需要使用.loc,但在我的情况下,我没有一个条件,以满足更新列。那我该怎么做呢?有什么想法吗
请让我知道你的意见
谢谢您能否尝试以下操作以查看是否仍然收到警告
ShortCSV = ShortCSV.copy()
ShortCSV['Date TIme'] = pd.to_datetime(ShortCSV['Date TIme'])
shortsv
是另一个数据帧的视图。问题1:是否要更改shortsv
,而不更改从中派生的其他数据帧?如果是,那么先做这个shortsv=shortsv.copy()
然后做你所做的。我实际上想用新的值timestamp替换shortsv['Date Time']。是的,这与@piRSquared所说的一样有效,但如果我理解正确,这样做不会改变shortsv?我可以看到它确实更新了shortsv中的值。它将更新,因为您的旧shortsv已不存在。任何对ShortSV的引用都将引用您的新副本。
ShortCSV = ShortCSV.copy()
ShortCSV['Date TIme'] = pd.to_datetime(ShortCSV['Date TIme'])