问题标签 [spread]

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

r - r tidyverse spread() 使用多个键值对不折叠行

我正在尝试 spread() 几个键/值对,但公共值列不会折叠。我认为这可能与之前的一些处理有关,或者我更可能不知道传播两个或更多键/值对以获得我期望的结果的正确方法。

我从这个数据集开始:

有 2 个预扩展步骤来定义在以下收集()函数中创建的“计数”值的顺序。这是使用行号定义“count”变量的原始顺序的第一个预扩展步骤:

这是定义“count”变量的数字顺序的第二个预扩展步骤:

最后是我一直在使用的传播代码:

我得到的是:

我期望的行为是“order”列将在所有具有相同“order”值的行中折叠以给出以下内容:

我已经查看了有关使用重复标识符进行传播和使用行号索引的问题和答案,但这并没有帮助。

我认为这与双重传播有关,但我不知道该怎么做。

谢谢你的帮助。

0 投票
1 回答
1684 浏览

r - 将行转置为具有多个类别的列 dplyr

我想使用tidyr扩展函数将行和多列中具有多个 id 的数据框转换为具有一行的 df,其中我们有针对 id 和类别的所有组合的指示列。如果dplyr并且tidyr不是最合适的,请向其他类似传播的功能开放。

在下面的脚本中,我只能指定 1 列作为值对。我想将 cat1 和 cat2 作为值列。另外,我希望字段名称为“sentid1_cat1,sentid1_cat2”等。

编辑

期望的输出:

0 投票
2 回答
60 浏览

r - R - 旋转一个困难的数据框

假设我有销售各种产品的三个销售代表的销售数据。困难在于每个销售代表销售的产品组合不同,而且数量也不一定相同:

Bob 销售产品 A、B 和 C

Mike 销售产品 A、B、C 和 D

Sara 销售产品 A、B 和 E

我想在产品上旋转它,这样结果看起来像这样:

如果他们都有相同的产品,我会按产品将它们过滤到单独的数据框中,然后在 RepName 上将它们重新组合在一起。我已经尝试了所有我能想到的spreaddcast。谢谢你的帮助!

示例数据帧的代码:

0 投票
1 回答
66 浏览

r - 使用重复的标识符传递内部传播的其他列

我有下面的数据框,我试图spread通过feature_code传递actv_amt来获得actv_amt相应feature代码的对应数据。我正在尝试传递,因为count_FEATURE = ACTV_AMT它传递了值但不合并数据。

作为参考,我之前问了一个问题, 取唯一计数并对 R 中的每个唯一值求和

输入类型 2:

实现的代码:

任何人都可以帮助我获得预期的输出。

0 投票
2 回答
74 浏览

r - 在 R 中操作因子和类别

所以我有一个我正在尝试操作的数据集,但我似乎找不到正确的方法来做到这一点。Iv 研究过使用 dcast 和 spread,但不确定如何进行正确的操作。

所以我有类似的东西:

我希望它看起来像这样:

简单的示例数据

0 投票
1 回答
145 浏览

r - Fill count/sum based on previous row count over time series

I have performed counts of events (in Group 1) over a time period for each group (in Group 2). I am looking to spread Group 1 events into separate columns, and using Group 2 and timestamp as rows. Each cell will contain the counts of events over a time period (Present date to the previous 4 days).

See the example below, for each of the Group 2 (I & II) I counted Events A and L in Group 1 happened within 4 days.

Using dplyr pipes I managed to produce the following table (also see Count event types over time series by multiple conditions)

Eventually, I want to obtain a table similar to this, with Events A & L counts update according to dates (time period = current date - 4 days) in both I & II (Group 2).

In a larger dataset, not all events in Group 1 appears in every Group 2. How can I update these empty cells so that it will either 1) carry forward the count from the previous row or 2) update the count based on the updated timestamp/ time period?

Thanks!

0 投票
1 回答
688 浏览

r - R 扩展函数(选择的未定义列中的错误)

我用谷歌搜索了我的错误,但这对我没有帮助。

得到一个数据框,其中有一列 x。

结果是:

当我尝试这个时:

我得到了错误:

但这很奇怪,因为我在不同时间使用了扩展函数(在同一个脚本中)。

所以我用谷歌搜索,看到了一些“解决方案”:

  • 我删除了所有“特殊”字符。如您所见,我的唯一值不包含特殊字符(已清除)。但这没有帮助。
  • 我检查了是否有任何同名的列。但所有列名都是唯一的。

@Gregor,@Akrun:

0 投票
1 回答
3350 浏览

r - 使用重复的行标识符传播

之前有关于这个话题的问题但我仍然在努力传播这个问题。我希望每个state人都有自己的温度值列。

这是dput()我的一个数据。我会打电话的df

我运行的代码是

我希望给我以下格式

但我收到错误消息

错误:行 (36, 38), (35, 37) 的标识符重复

我尝试了一些不同的东西。我尝试过的一件事是按日期分组。我在想同一日期的行会导致spread. add_rownames()我还尝试使用然后使用创建新行spread(state,tmin),但这也未能解决问题。

0 投票
0 回答
158 浏览

r - tidyverse 扩散函数误差

我之前spread在 tidyverse 中使用过该功能,并且效果很好。但是,现在,它会针对扩展函数的所有用途引发此错误消息:

合成仪器中的错误(primary_id = primary_id,货币 = 货币,:找不到对象“y”

合成仪器中的错误(primary_id = primary_id,currency = currency,:缺少参数“memberratio”,没有默认值

是什么导致了错误?

0 投票
4 回答
784 浏览

r - 如何使用 *only* 键值对传播数据帧

我有一个包含两列的数据框:公司名称和长格式标签。每家公司都有不同数量的标签,大约有 80k 行:

我想把它变成一个宽格式:

Spread 不起作用,因为它希望我将一列传递给它,该列将成为宽格式的列名,但我没有。所以我不能按原样传播它。看来我有两个选择:

  1. 使用附加到每个公司的数字创建另一个列,以用作宽格式的列名。但我不知道如何在每家公司的代码中做到这一点。

  2. 找到一个包,它的功能可以比 Spread 更灵活地转换数据帧。Splitstackshape 在将数据帧转换为格式方面做得很好,但反之则不行。

任何意见,将不胜感激!另外,我很想学习如何更好地格式化这些表格,而不必做一堆手动制表符/间距。