Pandas 何时创建视图与副本?

Barbara Streisand
发布: 2024-11-03 13:40:03
原创
972 人浏览过

When Does Pandas Create a View vs. a Copy?

Pandas 何时生成视图与副本?

访问 Pandas 数据框中的数据时,某些操作返回视图(对原始数据的引用),而其他操作则返回视图(对原始数据的引用)生成副本。了解管理此行为的规则对于高效的数据操作至关重要。

一般规则

  1. 操作生成副本:除下面列出的操作之外的所有操作通常都会创建副本.
  2. 就地修改:如果指定inplace=True,则某些操作可以修改直接原始数据帧。

索引器

  1. 设置索引器:设置值的索引器(例如.loc、.iloc、.iat、.at) ) 就地执行修改。
  2. 打开索引器单 D 类型对象: 获取索引器通常返回单数据类型对象的视图(尽管此行为可能因内存布局而异)。
  3. 获取多 D 类型对象上的索引器:获取具有多种数据类型的对象的索引器始终返回副本。

示例分析

在给定的示例中,

<code class="python">df[df.C <= df.B].ix[:,'B':'E']</code>
登录后复制

链索引选择不能可靠地维护原始数据帧的视图。相反,请使用正确的语法:

<code class="python">df.loc[df.C <= df.B, 'B':'E']</code>
登录后复制

避免意外行为

为了防止不可预测的行为,请严格遵守以下做法:

  • 使用 .loc基于行的索引器和基于整数的选择的 .iloc。
  • 将查询条件放在其中索引器参数,而不是链接索引器。

通过遵循这些规则,您可以有效地管理 Pandas 数据帧内的副本和视图,确保高效的数据操作和可预测的结果。

以上是Pandas 何时创建视图与副本?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!