问题标签 [pandas-loc]

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 投票
2 回答
2297 浏览

python - KeyError when using s.loc and s.first_valid_index()

I have data similar to this post: pandas: Filling missing values within a group

That is, I have data in a number of observation sessions, and there is a focal individual for each session. That focal individual is only noted once, but I want to fill in the focal ID data for each line during that session. So, the data look something like this:

Based on the post linked above, I was using this code:

But this returns a KeyError (specifically, KeyError:None). According to the .loc documentation, KeyErrors can result when the data isn't found. So, I've checked and while I have 152 sessions, I only have 150 non-null data points in the Focal column. Before I decide to manually search my data for which of the sessions is missing a Focal ID, I have two questions:

  1. I am very much a beginner. So is this a reasonable explanation for why I am getting a KeyError?

  2. If it is reasonable, is there a way to figure out which Session is missing Focal ID data, that will save me from manually looking through the data?

Output here:

0 投票
1 回答
224 浏览

python - 使用 loc 和 iloc 进行 pandas 分配时会弹出神秘警告

我的代码中有一条语句:

where是我在该语句所在i的循环中使用的迭代变量,是我导入的 numpy 模块,并且是一个看起来像这样的 DataFrame:fornpdf

如您所见,我的代码中的语句用于将新行插入到我的 DataFrame中,并用一个值df填充下面的最后一列(在新插入的行中)。cyclesNaN

但是,这样做时,我收到以下警告消息:

查看文档,我仍然不明白我在这里遇到的问题或风险是什么。我认为已经使用lociloc遵循了建议?

谢谢你。

在此处编辑 应@EdChum 的要求,我在使用上述语句的函数中添加了以下内容:

0 投票
5 回答
631818 浏览

python - iloc 和 loc 有何不同?

有人可以解释这两种切片方法有何不同吗?
我看过文档,也看过这些 答案,但我仍然无法理解这三者有何不同。对我来说,它们在很大程度上似乎可以互换,因为它们处于较低的切片级别。

例如,假设我们想要获取 a 的前五行DataFrame。这两个是如何工作的?

有人可以提出三种用途区分更清楚的情况吗?


曾几何时,我也想知道这两个功能有什么不同,df.ix[:5]但是ix已经从pandas 1.0中删除了,所以我不再关心了。

0 投票
1 回答
747 浏览

python - 当使用 `level` arg 时,pandas.DataFrame.xs() 在多索引上返回错误

我有一个潜在的熊猫错误,或者我只是盯着这个太久了。我以前在多索引上使用 xs 没有遇到过问题。代码如下,我已经验证了 Python 2 on pandas 版本 0.16.2 和 Python 3 运行 pandas 版本 0.17.0:

但是,不指定级别的工作方式与使用 .loc 一样,如下所示:

有没有人对这种行为有所了解?

0 投票
1 回答
3595 浏览

python - 从 pandas groupby 对象返回每个组的子集

我有看起来像的多级数据框:

我想遍历list, 并为每一行list检查 column 的值value,如果是False,则删除该行。所以最终目标是删除 中的所有第一行list, 我使用这段代码,这似乎是逻辑Falsevalue

但我有这个错误

你能解释一下我的方法有什么问题吗?

0 投票
2 回答
29513 浏览

python - 使用 loc 更新数据框 python pandas

我有一个带有列结构的熊猫数据框(df):

该数据框包含一月、二月、三月、四月的数据。A、B、C、D 是数字列。对于二月份,我想重新计算列 A 并在数据框中更新它,即月份 = 二月,A = B + C + D

我使用的代码:

这运行没有错误,但没有更改 2 月 A 列中的值。在控制台中,它给出了一条消息:

试图在 DataFrame 中的切片副本上设置一个值。
尝试改用 .loc[row_indexer,col_indexer] = value

我尝试使用 .loc,但现在我正在处理的数据框,我已经使用.reset_index()过它,我不确定如何设置索引和使用 .loc。我遵循了文档但不清楚。你能帮帮我吗?这是一个示例数据框:

我想更新一个日期:2000-01-03。我无法提供我的数据片段,因为它是实时数据。

0 投票
1 回答
508 浏览

pandas - 熊猫,在另一行的单元格上使用 .loc

我希望根据几个条件来操作大量数据。一个基于同一行,而另一个基于不同行的单元格。

例如我有一个这样的df,我用过

df['true'] = df.loc[:,['max','value']].min(axis=1)添加“真”列

但我还想根据“最大”两行中单元格的值向“真”列添加一个条件。像 .loc 我想用类似的东西检查整个数据框的这种情况

而且由于 pandas 非常擅长查询,我不想编写 if 语句来迭代整个数据帧。

在这种情况下,输出将是:

有什么建议么?

谢谢

0 投票
0 回答
131 浏览

python - 数据框 loc - 意外行为

我有一个数据框 df ,如下所示:

我尝试根据订单类型值更改 Quantity 列中值的符号(即保持买入为正,卖出为负):

但是,这会产生一些意想不到的结果(参见第二个和第三个卖出值):

我可以通过添加额外的“Sign”列来解决这个问题:

但无论如何都想弄清楚事情的原因。

0 投票
2 回答
9280 浏览

python - 在 Pandas DataFrame 中从另一行中减去一行

我试图在 Pandas DataFrame 中从另一行中减去一行。我在一个数字列之前有多个描述符列,迫使我在两个描述符列上设置 DataFrame 的索引。

当我这样做时,无论列的 set_index() 列表中列出的第一个列名是什么,我都会得到一个 KeyError。在这种情况下,它是“COL_A”:

我没有再考虑这一点,也无法弄清楚为什么 KeyError 是如何解决的。

0 投票
1 回答
62 浏览

pandas - 更新面板切片

我需要使用从数据框中撤出的一些值来更新面板切片。即使我没有收到任何错误,它也不起作用。怎么了?

请注意,它的维度不一样,我想使用索引来对齐数据。我知道转换为具有相同形状的数组可以获得我想要的东西,但我想找到另一种解决方案。