问题标签 [summarize]
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.
r - 总结并列出 dplyr 中的自定义索引
我正在尝试使用相应的识别变量列表输出分组汇总变量。
以dplyr::starwars
数据集为例,我想计算具有“浅”肤色的字符数,按性别分组,名称向量对应于单独输出列中的每个匹配项。
在现实世界的用例中, 会有多个条件summarise
,唯一标识符可能是subjectID
/ studyID
/etc。我对data.table
解决方案持开放态度,更喜欢基于矢量、R Shiny 友好、易于转换为函数的解决方案。
示例来自dplyr::starwars
:
期望的输出:
然后,此输出将被转置t()
,并用于在(DataTables)paste()
中创建匹配名称的悬停显示。DT
我想我需要类似的东西
在summarise
步骤中,或者可能是带有do.call
in summarise
/的自定义函数mutate
。
r - dplyr 中的条件汇总/变异
尝试根据之前的分组有条件地求和。很难想出它。
在按 f 分组后,我试图根据哪些是 r1 类型来对 amt 列求和。
可重现的代码:
我试过.[r1_amt >= 50]$amt
, cumsum(r1_amt >= 50)
,sum(ifelse(r1_amt >= 50, r1_amt, 0))
但无法得出分组的数字。
因此,给定的 1 行对于 r1 可能是 60,对于 r2 可能是 40,对于 r3 可能是 55,如果有意义的话,它应该仅包含在 r1 和 r3 的总和列中。
r - R:dplyr 仅在按多于一列分组时才给出奇怪的数据结构
当按几列分组并汇总 dplyr 中的几列时,我得到一个奇怪的数据结构。数据框很大,生成的数据结构的怪异性更显着,但下面创建了一个小版本的问题。
一切都很好:
这是什么?
r - dplyr::summarize_at – 按传递的变量顺序对列进行排序,然后按应用函数的顺序
问题
通过使用dplyr::summarize_at()
(或等效),我想得到一个汇总表,其中列首先按(G)使用的分组变量顺序排序,然后按(V)传递的变量顺序,最后按(F)函数顺序应用。默认顺序首先由 G 确定,然后由 F 确定,最后由 V 确定。
例子
编码:
结果是:
所需的变量顺序应该是:
我想使用这样的(天真的简单)代码:
但它不起作用。即使此代码也无法按我的预期工作(即使它不是我寻求的通用解决方案):
很可能everything()
应该始终是select()
.
概括
说,我有:
- 我传递给的N个分组变量(“gr_”)
group_by()
, - L必须汇总的变量(“var_”)和
- 要应用的M个汇总函数(“fun_”)。
通常,汇总表中所需的变量顺序应遵循以下模式:
r - 如何删除summarize_all中的NA以同时汇总多个col?
我有一个像这样的数据框,想总结每个使用 dplyr 忽略 NA 的平均值:
但是,这将在第 3 列和第 4 列中返回 NA。如何传入 na.rm=T?
r - r 将多个单元格聚合并折叠为一个
我有一个数据框:
我通过连接 3 列来创建一个新列:
现在,对于“concat”列的每个唯一值,“super”列的值相同,“category”列的值相同,“root”列的值相同。但是,对于列“concat”的每个唯一值,列“id”的值是不同的。列“coldefs”也是如此。
我想折叠(聚合)x,使其只有与列“concat”中的唯一值一样多的行(即 6 行)。在每一行中,我想要一个来自“super”列的值,一个来自“category”列的值,一个来自“root”列的值;然后是“id”列的 3 个值(像这样连接:1;2;3)和“coldefs”列的 3 个值(像这样连接:a;b;c)。
最好的方法是什么?我正在尝试以下方法,但它不起作用:
我显然做错了什么。非常感谢你的帮助!
r - 汇总数据并显示下面的原始数据
说我有数据看起来像这样
而且,在这里我想在一行中显示汇总值,在下面我想显示这些汇总值
现在,它应该看起来像这样
如何使它工作?
谢谢
r - dplyr 代码 "df %>% group_by(date = cut(date, breaks = "1 hour"))" 不再产生预期的结果?
我一直在使用以下 dplyr 代码从 1 分钟时间序列数据中生成每小时平均值。该代码已经运行了几个月,但最近产生了一些有问题的结果。以下任何功能是否发生了变化:group_by()
、cut()
或summarise()
?
预期输出:
实际输出:
在本周之前,此代码将生成一个df
带有两个观察值的新代码,一个针对03:00:00
小时,一个针对07:00:00
小时。虽然该group_by()
函数似乎正确分配了新的每小时时间戳,但该summarize()
函数的行为不正确。任何见解都值得赞赏。谢谢!
如果有更强大的替代方法可以将时间序列数据聚合到特定的时间间隔中,我会全力以赴!
r - 使用 dplyr 过滤包含部分字符串的行
假设我有一个像
我如何过滤此列中的所有部分找到的字符串,例如得到结果
没有指出我要过滤哪些术语(苹果|梨),而是通过自引用方式(即,它确实针对整个列检查每个术语并删除部分匹配的术语)。令牌的数量没有限制,字符串的一致性也没有限制(即“mapples”将与“apple”匹配)。这将导致一个倒置的基于 dplyr 的版本
此外,有趣的是使用这种分离来获得累积总和,例如
我无法让它与 contains() 或 grep() 一起使用。
谢谢
r - 使用 R 创建表
例 10.1。设40个人的血型和性别如下:
(O,男),(O,女),(A,女),(B,男),(A,女),(O,女),( A,男),(A,男),(A,女),(O,男),(B,男),(O,男),B,女),(O,男),(O,男), (A,女),(O,男),(O,男),(A,女),(A,女),(A,男),(A,男), (AB,女), (A,女),(B,女),(A,男),(A,女),(O,男),(O,男),(A,女),(O,男),(O ,女),(A,女),(A,男),(A,男),(O,男),(A,男),(O,女),(O,女),(AB,男)。
使用 SPSS 汇总二维频率表中的数据:
我可以使用R这样做吗?