问题标签 [chained-assignment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1607 浏览

python - 识别另一个 pandas DataFrame 的视图或副本

我想知道如何确定我是否有另一个数据框的视图或副本。给定一个 pandas.DataFrame

以及一个视图

和一份副本

这导致

将值分配给现有列会导致 df1 出现警告

但不适用于 df2。但是,值的分配在这两种情况下都有效。如何确定我是否有另一个 DataFrame 的副本或只是一个视图?

请注意,我看不到 DataFramesdf1df2类型的任何区别

通过比较元素相等

通过比较 NDFrame 对象

甚至通过比较列顺序

请注意,使用视图df1也会改变原始 DataFrame。

可能重复:熊猫:子索引数据框:副本与视图

没有回答我如何在df1和上进行检查df2

0 投票
11 回答
184785 浏览

python - Python:Pandas Dataframe 如何将整列与标量相乘

如何将数据框给定列的每个元素与标量相乘?(我尝试过查看 SO,但似乎找不到正确的解决方案)

做类似的事情:

给我一个警告:

注意:如果可能的话,我不想遍历数据框并做这样的事情......因为我认为整个列上的任何标准数学运算都应该是可能的,而无需编写循环:

编辑

我正在运行0.16.2熊猫

完整的跟踪:

0 投票
9 回答
754712 浏览

python - 将特定的选定列提取到新的 DataFrame 作为副本

我有一个有 4 列的 pandas DataFrame,我想创建一个只有三列的DataFrame 。这个问题类似于:Extracting specific columns from a data frame but for pandas not R. 以下代码不起作用,引发错误,当然不是 pandasnic 的方法。

pandasnic 的做法是什么?

0 投票
2 回答
3342 浏览

python - Python:SettingWithCopyWarning:试图在 DataFrame 中的切片副本上设置值

我的熊猫数据框:

我想要的输出:

想法是根据“B”列中的值创建新列,复制“C”列中的相应值并将它们粘贴到新创建的列中。这是我的代码:

我最终遇到了这个错误:

此代码在 Python 2.7 中运行良好,但在 3.x 中运行良好。我哪里错了?

0 投票
1 回答
975 浏览

python - 从现有数据框创建新数据框 - SettingWithCopyWarning

我有一个作为数据框导入的 csv 文件。该数据帧经过多个过滤步骤。数据也会根据条件在列之间移动。

在命令提示符中输入最后一行后,我得到了 SettingWithCopyWarning。

请注意,我在代码中使用了 .loc。

执行以下操作不会引发错误:

这让我认为问题在于使用 df2 作为新的数据框。

0 投票
1 回答
984 浏览

python - Pandas:使用 set_categories 时获取 SettingWithCopyWarning

我有两个数据框。两者都有相同的列集,但有些列是分类类型的(基于实际包含的值)。为了将它们结合起来,我用两个值的并集刷新了分类列的分类类型。

一切都按预期工作,但我想了解为什么在执行此代码时会引发 SettingWithCopyWarning:

我发现没有其他可能刷新类别数据,而不是使用过的。

0 投票
1 回答
85094 浏览

python - 在熊猫切片上设置值的正确方法

我有一个熊猫数据框:data. 它有列 ["name", 'A', 'B']

我想做(和工作)的是:

这会将 fred 行上的 A 列设置为 0。我也做了:

但是,两者都给了我同样的警告:

熊猫要我怎么做?

0 投票
1 回答
2276 浏览

python - 熊猫 SettingWithCopyWarning 的操作

我尝试delete一些列并转换列中的一些值

我得到的所有这些字符串

那里有什么问题?

0 投票
2 回答
881 浏览

python-2.7 - Pandas:SettingWithCopyWarning,试图了解如何更好地编写代码,而不仅仅是是否忽略警告

我正在尝试将电子表格的日期列中年份早于 1900 年的所有日期值更改为今天的日期,所以我有一个切片。

编辑:前几行代码:

这行代码有效。

然后,所有日期值都被格式化:

但我收到一个错误:

与复制

我已阅读建议使用 .loc 的文档和其他帖子

以下是推荐的解决方案:

df["DATE"].loc[df["DATE"].dt.year < 1900] = dt.datetime.today()给了我同样的错误,除了行号实际上是脚本中最后一行之后的行号。

我只是不明白文档试图告诉我什么,因为它与我的示例有关。

我开始搞乱拉出切片并分配给单独的数据框,但随后我将不得不再次将它们组合在一起。

0 投票
3 回答
7527 浏览

python - 即使在使用 .loc 之后,熊猫仍然会得到 SettingWithCopyWarning

起初,我尝试编写一些看起来像这样的代码:

得到 SettingWithCopyWarning 后,我尝试了 using.loc:

但是,我仍然收到相同的警告。是什么赋予了?