为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 python 中获取 DataFrame 的原始版本?

如何在 python 中获取 DataFrame 的原始版本?

慕娘9325324 2022-11-18 18:16:54
在处理 DataFrame 时,碰巧我更改了一列的值。然后,我意识到它影响了我的 DataFrame。print(df) #Before applying the change    A   B0   3   51   9   62   4   7print(df) #After applying the change    A   B0   3   01   9   02   4   0然后,我使用方法 (df._is_view) 查看我的 df 是视图还是副本,结果输出是:Flase。那么,有没有办法获得我原来的 DataFrame(在我进行更改之前)。提前致谢。
查看完整描述

1 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

简短的回答是否定的。复制的数据帧不维护指向它们作为副本的源数据帧的指针。


如果您的数据框是具有自己标识符的对象的副本,那么数据当然仍会保留在那里:


>>> df_orig = pd.DataFrame({'A': [3, 9, 4], 'B': [5, 6, 7]})

>>> df = df_orig.copy()

>>> df['B'] = 0

>>> df._is_view

False

在这种情况下,df_orig仍然会有你的数据。但是,如果您没有指向数据的变量,那您就不走运了。希望这可以帮助!


查看完整回答
反对 回复 2022-11-18
  • 1 回答
  • 0 关注
  • 117 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信