问题标签 [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.
python - 如何对熊猫中的多索引进行分组?
下面是我的数据框。我进行了一些转换来创建类别列并删除了它派生的原始列。现在我需要进行分组以删除重复项,例如Love
,Fashion
可以通过groupby
总和进行汇总。
这是我创建数据框时创建的索引
我假设我想删除索引,并创建日期和类别,multiindex
然后groupby
对指标进行求和。如何在熊猫数据框中执行此操作?
Python 是 2.7,pandas 在 ubuntu 12.04 上是 0.7.0。如果我运行以下内容,以下是我得到的错误
python - 熊猫:在每组中平均填充缺失值
这应该很简单,但我发现最接近的是这篇文章: pandas: Filling missing values within a group,我仍然无法解决我的问题....
假设我有以下数据框
我想在每个“名称”组中用平均值填写“NaN”,即
我不知道该去哪里:
谢谢一堆。
python - pandas 中是否有与 .groupby 相对的“ungroup by”操作?
假设我们采用 pandas 数据框...
然后做一个groupby()
...
然后做一些聚合/汇总操作(在我的例子中,我的函数name_join
聚合了名称):
因此,分组汇总输出为:
问题:
有没有一种快速、有效的方法可以从聚合表中获取以下内容?
(注意:age
列值只是示例,我不在乎在此特定示例中平均后丢失的信息)
我认为我可以做到的方式看起来不太有效:
- 创建空数据框
- 从中的每一行中
group_df
,将名称分开 - 返回一个数据框,其行数与起始行中的名称一样多
- 将输出附加到空数据框
python - 当日期不唯一时,在熊猫中按日期分组后计数观察值
当时间戳不唯一时,在 Pandas DataFrame 中按日期计算观察值的最佳方法是什么?
理想情况下,输出将提供每天的观察次数(或其他更高阶的时间单位)。然后可以使用它来绘制一段时间内的活动。
python - Pandas GroupBy.apply 方法复制第一组
我的第一个 SO 问题:我对 pandas(0.12.0-4)中 groupby 的 apply 方法的这种行为感到困惑,它似乎将函数 TWICE 应用于数据框的第一行。例如:
我首先检查 groupby 函数是否可以正常工作,并且似乎没问题:
然后我尝试在 groupby 对象上使用 apply 做类似的事情,我得到第一行输出两次:
任何帮助,将不胜感激!谢谢。
编辑:@Jeff 在下面提供了答案。本人密密麻麻一下子没看懂,所以这里举个简单的例子说明尽管上例中第一组的双打印输出,但是apply方法只对第一组操作一次,不会对原始数据帧进行变异:
但是通过将方法的返回分配给一个新对象,我们看到它按预期工作:
python - 多个groupby后如何将pandas数据从索引移动到列
我有以下熊猫数据框:
我将重复的行聚合起来token
,years
如下所示:
我不想在索引中包含“token”和“year”字段,而是希望将它们返回到列并拥有一个整数索引。
python - Pandas for 在组上循环
我有一个数据集,它有一个类别字段“城市”和 2 个指标,年龄和体重。我想使用循环为每个城市绘制散点图。但是,我正在努力将我需要的 group by 和 loop 组合在一个语句中。如果我只使用一个 for 循环,我最终会为每条记录生成一个图表,如果我按组进行分组,我会得到正确数量的图表但没有值。
这是我的代码,仅在我的组中使用了 for 循环,并被注释掉了:
python - pandas agg 和 apply 函数有什么区别?
我无法弄清楚 Pandas.aggregate
和.apply
函数之间的区别。
以下面的例子为例:我加载一个数据集,做一个groupby
,定义一个简单的函数,或者用户.agg
或者.apply
.
如您所见,我的函数中的打印语句在使用.agg
and后会产生相同的输出.apply
。结果,另一方面是不同的。这是为什么?
使用apply
:
使用agg
python - 迭代后合并组
我有一个包含国家和年份值的数据框:
我想计算每个国家/地区之间的百分比变化,因此我按国家/地区分组并按组进行迭代:
如何从包含我的新列的“分组”创建一个新的数据框pct
?
python - Pandas 上的 SQL“GROUP BY HAVING”等价物是什么?
使用 groupby 并在 pandas 中并行应用过滤器的最有效方法是什么?
基本上我要求 SQL 中的等价物
我认为有很多用例,包括条件均值、总和、条件概率等,这将使这样的命令非常强大。
我需要一个非常好的性能,所以理想情况下这样的命令不会是在 python 中完成的几个分层操作的结果。