打电话时slice(df, i)
在 R 的 dplyr 包中,如果我要求的行索引不存在(nrows < i
),它似乎返回除组中的第一行之外的所有行,就像我调用的那样slice(df, -1)
.
例如:
library(dplyr)
c1 <- c("a","b","c")
c2 <- 1:3
df <- data.frame(c1,c2)
slice(df,2)
结果将如预期:
b 2
但如果我打电话
slice(df, 5)
结果是每一行but第一行:
b 2
c 3
使用时这尤其令人讨厌group_by()
然后打电话slice()
关于团体。有逻辑原因吗slice()
正在做这个?
似乎返回填充有 NA 的行(行索引大于“nrows”)的组中“不够高”以生成所请求的切片可能是一个有用的结果。
这是因为我试图从每个组中提取排名结果,但有些组没有足够的数据,而其他组则有。例如“列出每个地区销售额排名第十的销售人员。”但其中一个地区只有 8 名销售人员。
我参加这个聚会有点晚了,但还是到了。对于错误消息“错误:不兼容的类型,需要字符向量”有一个非常简单的解决方案
只需插入ungroup()
在你之前mutate()
功能,你应该没问题。
但我认为这是某种类型的错误slice()
。我将提交错误报告。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)