问题标签 [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 投票
2 回答
85 浏览

python - 基于列标签 DatetimeIndex 组合 DataFrame

我将天气数据存储在许多单独的文件中,其中列用于特定的测量仪器,每一行对应于特定日期的平均读数。假设一个文件如下所示:

看起来像这样的一秒钟,

我想将这两者合并在一起,以便所有仪器(即 A、B、C、D...)可以显示在具有所有测量时间段的同一文件中。预期结果如下所示:

为了得到这个,我试过:

但正如您所见,需要合并的列已被拆分,因为没有公共行索引。我觉得这个功能对 pandas 来说是一个非常有用的补充。这可以做到吗?

0 投票
1 回答
88 浏览

r - R:拆分 - 应用 - 组合以获得累积变量

这是 df 的一个小代表:

我想为每个团队创建一个新的变量/列,根据日期从最旧到最近的游戏对不同的游戏进行排名。

输出将如下所示:

我想到了拆分 - 应用 - 与排名功能相结合,但我无法让它发挥作用。

0 投票
1 回答
66 浏览

r - 如何在矩阵的子集上运行函数

我有一个包含数据子集的 data.frame。这些子集由存储在名为 MASTStation 的列中的 ID 标识。这是我的数据中的一个示例。

我有一个要应用于每个子集的函数,所以我尝试像这样使用 by() :

它返回以下错误和回溯():

所以问题出在我的功能上。但是,当我根据子集将矩阵拆分为两个单独的矩阵并在每个矩阵上运行函数时,没有问题。这是我的功能:

我不明白为什么在使用 by() 运行函数时两个变量列不再具有相等的长度。我确信这是一个足够简单的解决方案,但我没有看到它。有任何想法吗?

我是 R 的初学者,所以请多多包涵。

0 投票
2 回答
91 浏览

r - 从每个变量(列)中删除 NA 并合并案例

我有一个我正在清理的数据集,并且有一些我想组合的行(观察)。解释我要做什么的最好方法是使用以下示例:

在前面的示例中,我想保留香蕉的两个变量(成本和重量)的信息,但不幸的是它在不同的记录中。我可以为一个变量手动完成此操作,但我的实际数据集有几十个变量。我想知道如何完成上面完成的任务,但使用 dplyr 或应用于一组列。

0 投票
3 回答
1408 浏览

r - 在 R 数据帧中生成随机数,这些随机数在相似行中是恒定的

我有一个数据框,每个“用户”包含 X 行,其中 X 在用户之间不是恒定的。我想做的是能够生成随机数来填充新列,但是对于每个“用户”,与该用户对应的所有行的随机数都是相同的。例如,数据可能如下所示:

我想生成一个可能看起来像这样的新列:

我做的第一种方法基本上是使用s <- split(df, df$user),但是数据框包含大量用户,我认为这可能是一种非常低效的方法。

非常感谢。

0 投票
2 回答
1124 浏览

r - 按组拆分数据帧的最快方法,在 R 中打乱单个向量

我熟悉 R 中的一些拆分-应用-组合函数,例如 ddply,但我不确定如何拆分数据框、修改每个子集中的单个变量,然后重新组合子集。我可以手动执行此操作,但肯定有更好的方法。

在我的示例中,我试图在 group中随机播放单个变量(但没有其他变量) 。这是一个排列分析,所以我做了很多次,因此想加快速度。

示例数据框:

感谢您的任何指导!

0 投票
1 回答
131 浏览

r - 按原始顺序组合拆分的“data.frame”

我将如何将这个拆分data.frame重新组合在一起以保留原始订单?

我的实际用例涉及更复杂的功能。我需要将 adata.frame按一个因子拆分,执行一些每组转换,然后按原始顺序将其组合回来。

0 投票
2 回答
197 浏览

python - pandas combine_first 导致更多行数

在以下数据中,我需要将“DATE”列中的日期更改为 CLOCKDATETIME 小时小于“4:00”小时的前一个日期(DATE - 1 天)。我已经达到了可以获取小时数少于“4:00”小时的行并更改日期并将结果与​​输入相结合的地步,但是对于输入的 29 行数据,我没有得到所需的结果我得到的最终结果为 41 行,其中行数应保持不变。如何组合数据框并获得所需的结果(行数应与输入行数相同)?

CSV 格式的样本数据:

以下是我现在的代码:

0 投票
1 回答
87 浏览

python - Python Pandas:拆分应用组合,当函数应用于第二组时可变长度错误?

在尝试使用 Python Pandas 中的拆分-应用-组合范例时,我注意到一些奇怪的行为 - 变量x不会采用正确的长度!

我要完成的工作的概述:

  1. 使用 groupby() 操作将包含多个公司数据的数据框分成组(每个公司一个)
  2. 计算每组的信息盈余
  3. 返回带有结果的新数据框

对于第一组,计算是完美的!但是,在第二组上,切片数据帧时似乎继承了前一个变量的长度 - 这是为什么呢?正如您从代码和提供的调试中看到的那样,我试图找出问题但看不到它,任何帮助将不胜感激!

函数调用:

调试(和问题):

第一组:

第二组:

这就是问题所在 - 由于某种原因,长度x减少到 78(应该是 1005!),神秘的是 1006 - 928 = 78(第一组的长度 - 第二组的长度)

编码:

拆分应用组合方法

信息盈余法(带调试)

互信息法

0 投票
1 回答
712 浏览

r - 如何在 R 中分离因子相互作用

我最近不得不根据因素的相互作用来绘制一些数据,我发现它比我认为 R 中这种常见的东西要困难得多。我怀疑我遗漏了一些东西。假设我有一个包含 30 个数字的向量以及一对因子。

我想要每种因素组合的平均值。

现在我想使用格子xyplot来绘制这些均值,其中我为 的两个值中的每一个都有一个面板a。手段就是y价值,b因素就是x价值。股票xyplot公式将类似于

其中mydf是一个数据框,其中包含从上面的tapply计算的列yb和。但我的问题是如何解开相互作用的因素。这就是我所做的。a

现在mydf

我可以用

但我觉得这个业务与strsplitnames(y)然后sapply是矫枉过正。似乎应该有一种更直接的方法来恢复使用tapply创建的因子交互。