问题标签 [pandas-groupby]

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 投票
3 回答
9947 浏览

python - Pandas Dataframe:如何在其他列中添加出现次数的列

我必须关注df:

我想得到

我试过使用:

但这没有帮助。我有一个充满“NaN”的 Occur 列

0 投票
1 回答
32951 浏览

python - 熊猫:在 groupby 'date' 中删除重复项

在下面的数据框中,我想消除重复cid值,以便输出df.groupby('date').cid.size()df.groupby('date').cid.nunique().

我看过这篇文章,但似乎没有解决问题的可靠方法。

我尝试过的事情:

  1. df.groupby([df['date']]).drop_duplicates(cols='cid')给出这个错误:AttributeError: Cannot access callable attribute 'drop_duplicates' of 'DataFrameGroupBy' objects, try using the 'apply' method
  2. df.groupby(('date').drop_duplicates('cid'))给出这个错误:AttributeError: 'str' object has no attribute 'drop_duplicates'
0 投票
2 回答
2788 浏览

pandas - 如何根据聚合对熊猫组进行排序

假设我有一个数据框 df 并在其上使用了 groupby 。如何对这些组进行排序?我希望首先在 B 列中具有最高中位数的组,最后是中位数最低的组。我知道如何对中位数进行排序:

但是我将如何对这些组进行实际排序(而不是他们的中位数)?

0 投票
4 回答
5802 浏览

python - 为什么熊猫滚动使用一维ndarray

我有动力使用 pandasrolling功能来执行滚动多因素回归(这个问题不是关于滚动多因素回归)。我希望我能够apply在 a 之后使用df.rolling(2)pd.DataFrame提取 ndarray.values并执行必要的矩阵乘法。结果不是这样。

这是我发现的:

对象是什么样子的:

矩阵乘法行为正常:

使用 apply 逐行执行点积的行为符合预期:

Groupby -> Apply 的行为符合我的预期:

但是当我运行时:

我得到:

AttributeError:“numpy.ndarray”对象没有属性“值”

好的,所以 pandasndarray在其rolling实现中直接使用。我可以处理。而不是使用.values来获取ndarray,让我们尝试:

形状 (1,) 和 (2,1) 未对齐:1 (dim 0) != 2 (dim 0)

等待!什么?!

所以我创建了一个自定义函数来查看滚动在做什么。

然后跑:

我的结果pd.DataFrame是一样的,那很好。但它打印出 10 个一维ndarray对象。关于什么rolling(2)

同样的事情,期望输出,但它打印了 8ndarray个对象。 rolling正在为每列生成一维ndarray长度window,而不是我预期ndarray的形状(window, len(df.columns))

问题是为什么?

我现在没有办法轻松运行滚动多因素回归。

0 投票
3 回答
40486 浏览

python - pandas groupby 删除列

我正在做一个简单的分组操作,试图比较分组方式。正如您在下面看到的,我从一个较大的数据框中选择了特定的列,其中所有缺失值都已删除。

选定的列和 df 头

但是当我分组时,我丢失了几列:

分组逻辑和结果df

我从来没有在 pandas 上遇到过这种情况,而且我在堆栈溢出上也没有发现任何类似的东西。有没有人有任何见识?

0 投票
2 回答
9738 浏览

python - Pandas - 在 groupby 中获取值作为频率

有人可以帮我处理熊猫中的(可能的)groupby。

这是df:

然后我希望每个计数作为按捐助者分组的计数总和的频率。

喜欢:

然后,如果它们与 easy_donor 列匹配,则原始数据框中的每个计数除以 groupby 总和。我必须加入原始数据框吗?

0 投票
1 回答
111 浏览

python - 选择具有超过 x 个成员的组

pandas 有没有办法从分组数据框中选择具有超过 x 个成员的组?

就像是:

我在文档或 SO 上找不到解决方案。

0 投票
2 回答
57740 浏览

python-3.x - Pandas 按递增顺序编号组内的行数

给定以下数据框:

我想创建列'C',它对列A和B中每个组内的行进行编号,如下所示:

到目前为止,我已经尝试过:

......但它不起作用!

0 投票
1 回答
715 浏览

python - Pandas Groupby TimeGrouper 并申请

根据这个问题。此 groupby 在应用于我dfpd.rolling_mean列时有效,如下所示:

如何将相同的 groupby 逻辑应用于df包含pd.rolling_stdand的另一个元素pd.rolling_mean

0 投票
2 回答
21870 浏览

python - 如何使用 groupby 在 python pandas 中连接字符串?

我目前在顶部有数据框。有没有办法使用 groupby 函数来获取另一个数据框来对数据进行分组并将单词连接成下面使用 python pandas 的格式?

谢谢

[输入图片描述 [1]