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

ios - 如何将 JSON 的结果分散到一个数组中,以供以后用作数据标题、文本、图像等

我收到的数据,但不是因为无法找到如何使用它们的示例,总是有错误。

如何将它们变成数组或字典,欢迎参考,示例!

0 投票
2 回答
6613 浏览

r - R:重复数据帧上的传播函数

我有一个需要旋转的数据框,但该数据框有重复的标识符,因此spread函数会出错Error: Duplicate identifiers for rows (5, 6)

然后我合并行并粘贴Metric

然后重复,当然它现在可以工作了:

问题:有没有一种“更简单”的方法可以做到这一点,或者我的方法是否足够有效,所以我不需要为此失眠?谢谢!

编辑。所有代码 - 我的和 2 akrun 的代码都可以很好地处理这个小数据集。但是,akrun 的dplyr版本在我的真实数据集上中断了。这是dput.

0 投票
1 回答
505 浏览

r - 使用 tidyr:spread() 透视键值对变量

我正在尝试使用tidyr:spread().

在运行 spread() 时,我收到以下错误:

[.data.frame(data, setdiff(names(data), c(key_col, value_col))) 中的错误:选择了未定义的列

这让我觉得问题出在值上,而不是在变量名中,正如错误所暗示的那样,有什么想法要寻找吗?

同样,是否有更有效的语法方法来传播多对键值变量?

0 投票
2 回答
2410 浏览

r - R - tidyr - spread() - 处理 NA 作为列名

我正在使用将多个分类变量传播到布尔列tidyr::spread()。由于数据包含 NA,因此spread创建一个没有名称的新列。

我正在寻找的是一种摆脱NA的方法

a)管道解决方案(我已经尝试select_()'['(),但不知道如何引用 NA 列的名称或索引)或

b) 一个自定义函数,这会更好

c) 一种简单地不生成 NA 列的方法,如果可能的话,与 Hadleyverse 兼容。

以下是我当前(并且非常不雅重复)的解决方案。

0 投票
0 回答
366 浏览

r - 替换长度为零:找不到我的循环的问题

我正在尝试使用 R 修改定量交易一章中的一些代码,以使用回报而不是原始价格。除了我的代码的“利润和损失”部分之外,一切都会好起来的。它不断返回“qty_x[i] = (vec[i] + prev_x_qty) 中的错误:替换长度为零”查看我的变量时,我似乎找不到任何问题。我已经包含了复制代码。

0 投票
2 回答
760 浏览

r - 基于两个变量的 Dplyr 过滤

我想用来dplyr确定数据框中的哪些观察满足以下条件:

  • 在每个Group中,Var2观测Var1 == good值的总和大于观测值的总和,其中Var1 == bad

这是玩具数据框:

到目前为止,我已经确定我应该使用 , 的某种组合,group_by()但是我似乎无法找到一个好的方法来做到这一点。到目前为止,这是我想出的:summarise()filter()

我应该采取哪些后续步骤?最终分析应该返回“A”,因为它是唯一一个观察值大于观察值的Group地方。Totalgoodbad

0 投票
2 回答
16818 浏览

r - 如何在 tidyr 中正确使用扩展功能

如何更改下表:

改成:

我使用以下代码来获取第一个表。

然后我尝试使用 spread 命令到达第二个表,但我收到以下错误消息:

“错误:必须命名所有列”

0 投票
2 回答
4525 浏览

excel - 跨行传播值 Excel

我有两张表(一张用于采购订单,另一张用于发票),我想将发票表中的数量分配到采购订单发票数量列,但我想匹配采购订单数量中的确切数量。

这是桌子现在的样子

这是桌子现在的样子

这就是我希望它看起来的样子:

在此处输入图像描述

我该如何做到这一点?谢谢!

这是excel附件文件: Book1.xlsx

更新:是否可以对多个代码执行此操作?

在此处输入图像描述

0 投票
0 回答
866 浏览

r - 使用行名作为列标题将长格式数据重塑为宽格式

我查看了 StackOverFlow 上的以下问题以及其他 R 帮助书籍的链接:

R: Reshape Data Long to Wide - 理解重塑参数

使用多个分组从长到宽重塑

如何将数据从长格式重塑为宽格式?

http://www.cookbook-r.com/Manipulating_data/Converting_data_between_wide_and_long_format/

我想获取我的长格式数据(两列,6200个条目),列“id”中具有非唯一名称,“序列”中具有不同的序列,并重塑为列标题现在为“ id”,每个 id 下面列出了来自“sequence”的所有序列。

我想得到什么:

我试过用reshape

但是我收到警告消息说多行匹配:

我也尝试过使用spread

但得到重复标识符的错误:

如何使用上述任一函数将数据转换为宽格式并将其对应的每个序列置于 id 列下?

提前致谢。

编辑#1

使用建议来包含大卫评论中的索引让我到达那里

结果是:

编辑#2

重塑功能是否有办法避免放入“序列”。在每个名字前面?还是我必须求助于正则表达式来重命名所有列名?

编辑#3

用于从列名gsub中删除"sequence."并将其分配给变量:

然后将 应用于new_col_names数据框

谢谢大家帮助我!

0 投票
1 回答
1007 浏览

r - tidyr 传播排序不一致

我注意到tidyr(0.4.0)在使用时对值列进行排序spread,其中 astidyr(0.3.1)按照它们在 a 之前的顺序返回值列gather

可重现的示例 1:

sam.id我通过两者和frac测量的样本的比例)即倍数来汇总物种值gather

管道的最后一部分使用 计算所有物种的简单总数mutate。以便:

可重现的示例 2:

可以看到值列的顺序是如何改变的(按字母顺序),这使得额外的数据管道步骤使用mutate例如麻烦。

抛出错误;

有没有办法tidyr(0.4.0)spread顺序退出gather

还是必须gather(和summarise)两次——每个键值对一次?