问题标签 [split-apply-combine]

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 回答
68 浏览

python - 在 pandas 的 split-apply-combie 期间省略的一列

我正在做一个拆分应用组合来找到每个成员的总量。我需要的数据框应该有 14 列:MemberID, DSFS_0_1, DSFS_1_2, DSFS_2_3, DSFS_3_4, DSFS_4_5, DSFS_5_6, DSFS_6_7, DSFS_7_8, DSFS_8_9, DSFS_9_10, DSFS_10_11, DSFS_11_12, DrugCount. 但是,我没有得到第 14 个(DrugCount),知道为什么吗?变量joined输出全部 14,但是joined_grouped_add,我在其中进行聚合的函数仅返回 13。

0 投票
2 回答
1435 浏览

r - 使用 R 中的 data.table 按组生成所有 ID 对

我有一个 data.table,其中包含许多组中的许多人(有 id)。在每个组中,我想找到每个 id 组合(每对个人)。我知道如何使用拆分应用组合方法来做到这一点,但我希望 data.table 会更快。

样本数据:

拆分应用组合方法:

我最好的 data.table 尝试生成单列,而不是包含所有可能组合的两列:

提前致谢。

0 投票
0 回答
202 浏览

matlab - Matlab2016 splitapply 具有非标量输出的函数

我在 Matlab2016 中有一个表,我想对列的分组应用一个函数。我知道 splitapply 函数可以做到这一点,但我想使用一个函数,例如tierank,其中输出是非标量的,但仍然特定于它所应用的列中的条目。
例如,我想对x列中的元素使用tierank 函数计算y列。并列排名应基于t下的组 [0,1] 。因此,分别对t值为 0 和t值为 1的元素进行排序。最好使用可以对整个表应用一次的函数。有没有办法用 splitapply 函数或任何其他函数来做到这一点?谢谢!

0 投票
4 回答
1077 浏览

r - 按列分组,然后计算 R 中每一列的平均值和标准差

如何按列分组,然后计算 R 中所有其他列的平均值和标准差?

例如,考虑著名的 Iris 数据集。我想做一些类似于按物种分组的事情,然后计算花瓣/萼片长度/宽度测量值的平均值和标准差。我知道这与拆分应用组合有关,但我不确定如何从那里着手。

我能想到的:

期望的输出:

0 投票
1 回答
1401 浏览

r - 在 R 中按 ID 计算复合回报

我正在尝试计算 CAGR 值,定义为(结束/开始)^(1/年数)-1。

我有一个 df,其中包含“Stock”、“date”、“Annual.Growth.Rate”列。快速注意:我试图使用滞后函数来执行此操作,但是,我无法在每只股票的开头更改递归公式。查看 dput 会更有意义:

这是预期的输出。在存量、日期和增长之前)。100 的增长并不全是以前的“滞后”。由于第一个可用日期乘以给定的起始日期,在本例中为 100,(1+.1)*100,然后后面的增长值是未来值 (110) * 下一个增长率。我可以弄清楚如何使用 dplyr 进行 CAGR,但我真的被困在 100 的增长上。

0 投票
1 回答
121 浏览

r - R - 条件 IF 减去每行匹配条件

我的数据集包含product类型和purchase数量列。我希望能够从每行的实际数量中减去purchase每种类型的平均数量。productpurchase

我有一个大致像这样的数据集

我可以使用 split-apply-combine 方法来做到这一点,如下所示:

这可行,但它发生在使用%>%and的长而组织良好的链的中间dplyr。有没有办法做到这一点dplyr,这样我就可以在不破坏链条的情况下得到我需要的东西?

谢谢你。

0 投票
1 回答
62 浏览

python - 如何将代码构造编写为函数

我是编程和 python 的新手,想使用 'def' 'return' 构造将以下代码编写为函数:

我的尝试返回无效语法:

我的目标是最终使用我的 ConsecutiveID 函数,如下所示:

我正在应用拆分应用组合结构。groupby 在哪里拆分我的数据,我使用我想在 apply 中构造的函数。

我的主要问题是如何将我称之为 ConsecutiveID 的内容编写为函数。感谢您的任何帮助。

0 投票
1 回答
658 浏览

python - 通过复制规范化数据

注意:这个问题确实是Split pandas dataframe string entry to separate rows的副本,但这里提供的答案更加通用和信息丰富,所以恕我直言,我选择不删除线程


我有一个具有以下格式的“数据集”:

我想通过复制每个 id 的所有值来标准化它:

我正在做的是应用 split-apply-combine 的pandas使用原则,为每个组.groupby创建一个tuple(groupby value, pd.DataFrame())

我创建了一个列来分组,它只计算行中的 id:

我复制行的方式如下:

我进展缓慢,但它确实很复杂,如果您能与此类问题分享任何最佳实践或建议,我将不胜感激。

0 投票
3 回答
306 浏览

r - 根据另一个分组变量以不同方式切割一个变量

示例:我有一个按性别划分的身高数据集。我想将高度分成低和高,其中切点被定义为平均值 - 每个性别内的 2sd。

示例数据集:

我想在一行矢量化代码中做一些事情,因为我很确定这是可能的,但是,我不知道如何编写它。我想可能有一种方法可以使用cut(),apply()和/或dplyr实现这一点。

0 投票
1 回答
58 浏览

r - 按组处理列表列表

我想处理一个列表列表。具体来说,我想通过分组变量(每个列表的第一个成员)提取每个列表的第三个成员的数据框,然后使用 mean()、median()、sd()、length() 等几个函数该组中的数据。然后输出在数据框中返回,看起来像:

所以我的问题是: 1. 为什么上述方法不起作用?2.这个感觉很笨重,有没有更高效的方法呢?