gpt4 book ai didi

Python/Pandas新手: unwanted changes to dataframe are carrying through when reassigning to a new variable

转载 作者:行者123 更新时间:2023-12-01 00:20:27 25 4
gpt4 key购买 nike

我有一个名为 df 的数据框,我在其中应用一些简单的转换(删除列、替换值等)。我正在执行的工作需要我拥有 2 个数据框副本;一种是发生变化的,一种是保持原始状态的。这是我所经历的示例:

import pandas as pd

df=pd.read_csv(x)
df=df2
#created a data frame called df2 that should reflect all changes in df at this point (i.e. I want the file to remain in its original state)

#changes are then made to df

print(df)
#some output

print(df2)
#all changes made to df are now showing in df2, which is what I don't want

很明显,我并不完全理解数据帧如何在 Python 中运行,我有 R 背景。这是正常行为,还是不应该发生的事情?如何在数据帧转换的早期阶段复制数据帧,而不会将这些更改传递到包含 df 内容的另一个变量?当我输入此内容时,我意识到我可能只需要使用不同的名称再次导入该文件。我希望这是清楚的,希望了解这里发生的事情。感谢大家的帮助。

最佳答案

您应该尝试使用copy功能。如果不使用复制功能,当您将 df 分配给 df2 时,dfdf2 都将指向相同的对象。

import pandas as pd

df=pd.read_csv(x)
df2=df.copy()

关于Python/Pandas新手: unwanted changes to dataframe are carrying through when reassigning to a new variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58999197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com