问题标签 [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.
matlab - 在 Matlab 中替代 splitapply
我正在尝试运行使用该splitapply
函数的其他人的 Matlab 代码,该函数仅在 R2018a 中可用。我目前正在使用 R2015a;是否有一个简单的(尽管效率较低)替代实现可以达到可以(暂时)使用的相同目的?
r - 如何使用 dplyr 计算两个分组变量的加权平均值
我知道这一定非常简单,但我很难找到正确的 dplyr 命令来执行此操作。假设我想按两个变量对数据集进行分组,然后汇总每一行的计数。为此,我们只需:
这将为三个变量cyl
、mpg
和生成一个包含 27 行的数据框Count
。接下来我想做的是总结mpg
三个值中每一个的cyl
平均值。请记住,每一行可能包含Count
大于一个,在计算平均值时必须考虑这一点。我的数据框应该有 3 行 2 个变量cyl
,并且Avg_mpg
. 有人可以给我一个短代码卡盘吗?先感谢您。
r - 在R中按索引组合行
编辑:我知道已经回答了一个类似的问题,但它不适用于我在下面提供的数据集上。上面的数据框是我使用扩展函数的结果。我仍然不确定如何巩固它。
EDIT2:我意识到我之前在数据上使用的 group_by 函数是阻止传播函数以我最初希望它工作的方式工作的原因。使用 ungroup 后,我能够直接从原始数据集(下图未显示)转到下图所示的第二个数据帧。
我有一个如下所示的数据框。我正在努力使每个 ID 号只有 1 行。
我希望生成的数据框看起来像这样。
matlab - Matlab`splitapply`速度趋势?
我的组织通常比最新的 Matlab 版本晚几年。我发现splitapply
当有很多组(两个数字分组变量)时,这非常慢,这与我使用 SQL 的经验形成鲜明对比。我怀疑它会遍历所有组。不管是什么原因,出于长期规划的目的,我想知道是否有人可以评论这是否是 2015b 后 Matlab 版本中的问题?
这是一些基准测试代码。结果并不像我的真正问题那样极端,但它仍然显示了执行时间的差异。
输出是:
r - 从总体数据框创建多个数据框的循环
假设我有一个名为 pop 的数据框,并且我希望通过一个名为 replicate 的分类变量来拆分此数据框。此复制包含 110 个类别,我希望对每个数据框进行分析,然后必须组合每个数据框的输出以创建一个新的数据框。换句话说,假设它是复制 i,那么我希望创建数据框 i 并对 i 执行逻辑回归并为 i 保存 beta 0。所有 beta 0 将被组合以创建一个包含所有 beta 0 的表,用于复制 1-110。我知道那是一张嘴,但提前谢谢。
matlab - 如何对包含子分组数据的矩阵进行行排序
在 matrixA
中,每一列代表一个输出变量,每一行代表一个读数(共 6 行)。每个输出都有一定的子组大小(3 行的组)。我需要A
在每个子组中的垂直方向上对 的元素进行排序。
我正在考虑类似的东西B = splitapply(@sort,A,2)
,但splitapply
不能这样称呼。我怎样才能得到想要的结果?
请注意,实际矩阵包含 8 列和 300 行。上面演示了一个示例。
r - 如何在 R 中添加总计和 group_by 统计信息
当使用计算任何统计数据时summarise
,group_by
我们只得到每个类别的汇总统计数据,而不是所有总体(总计)的值。如何获得两者?
我正在寻找干净而简短的东西。到现在我只能想到:
但我想要更紧凑的东西。特别是,我不想输入代码(总结)两次,每组一次,总数一次。
arrays - 创建一个变量,其值具有数据类型数组,并且这些值来自多个列
我想知道如何想出新变量“test_array”,它是数据类型数组并通过组合列“test_1”到“test_4”来创建,因为我想用它来进行进一步的计算。
r - 在R中同时组合几对列(包含数字和NA)
我正在尝试确定如何有效地组合列。我从一个看起来有点像下面的数据框开始。变量名称不遵循任何特定模式,并且我尝试组合的列不一定彼此相邻。我已经包含了列号,以便更容易地引用它们。
想象一下,我正在尝试合并第 2 列和第 3 列、第 4 列和第 7 列以及第 5 列和第 6 列。如您所见,如果正在合并的列之一中有一个数字,则相应的列有一个 NA。如果第 8 列 == a,则第 2 列是数字,第 3 列是 NA。如果第 8 列 == b,则第 2 列是 NA,第 3 列是数字。第 9 列(映射到 4 和 7)和第 10 列(映射到 5 和 6)遵循类似的模式。
我正在尝试生成 3 个新列:一个具有 2 和 3 的组合值,一个具有 4 和 7 的组合值,一个具有 5 和 6 的组合值。我希望将它们添加到上面数据框的末尾,而且我不在乎合并的原始列是否保留在数据框中。这就是另外 3 列的样子:
到目前为止,我就是这样做的:
有没有办法将这些组合起来,这样我就不必手动重复相同的功能来制作每一列?我还需要合并几列,所以我希望有一种更有效的方法来做到这一点。如果我能澄清任何事情,请告诉我。
python - Pandas - 直接将移动平均列从分组添加到数据帧
我有一个包含以下列的数据框:
我想在同一个数据框中添加第 4 列,它是每个名称的第 3 列(值)的指数加权移动平均值,按第一个日期排序,然后按 day_index 排序。我可以使用以下代码将其生成为一个系列。
但是,如果我尝试直接将其添加到原始数据框中,则会收到以下错误:
如果我尝试将系列与数据框合并,则会收到以下错误:
此时,我正在考虑将系列转换为数据框,然后合并。但我相信一定有更好的方法。