[英]Is Pandas DataFrame df.loc a view or a new DataFrame object?
标题说了算。 在StackOverflow 34884536的公认答案中,它说
您可以在此处找到有关问题性质的更长讨论,但主要内容是我们现在正在转向“写入时复制”行为,在这种行为中,无论何时切片,您都会获得一个新副本,你永远不必考虑视图。
...
最好的猜测是修复将在一年内完成——同时,恐怕一些 .copy() 可能是必要的,抱歉!
(回答 2016/01/20)
df.loc[] 现在是否返回“副本”? 还是为了安全起见,我还必须使用 .copy() 吗?
它返回一个副本。 您可以通过制作副本、通过 .loc 将索引分配给另一个变量、更改变量并注意原始帧没有更改来测试这一点。
稍微相关,但这里有更多信息: http : //pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
它可能会返回副本或视图,具体取决于数据帧的底层结构。 为了安全起见,您应该使用 .copy()
那里给出了行为差异的一个很好的例子: 在 Pandas 中,.iloc 方法是否提供副本或视图?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.