首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R:如何在aggregate命令后对每个单元格中的元素进行计数

R:如何在aggregate命令后对每个单元格中的元素进行计数
EN

Stack Overflow用户
提问于 2017-03-25 00:47:09
回答 2查看 51关注 0票数 0

原始my.data

代码语言:javascript
复制
my.data <- data.frame(
  ID = c(1,1,2,2,2),
  Value = c(3,4,2.1,3.4,5)
)

ID        Value
1         3
1         4
2         2.1
2         3.4
2         5

数据由aggregate整合,如下所示

代码语言:javascript
复制
consol <- aggregate(Value ~ID, my.data, paste)

consol看起来像这样:

代码语言:javascript
复制
ID      Value
1       c("3", "4")
2       c("2.1", "3.4", "5")

如何统计consolvalue的元素个数?即使consol[1,2]显示"3" "4"length(consol[1,2])也会给出1的值。实际上,Value列中的所有单元格的长度都是1。我希望consol[1,2]的长度为2,consol[2,2]的长度为3。

EN

回答 2

Stack Overflow用户

发布于 2017-03-25 00:50:47

代码语言:javascript
复制
lapply(consol$Value, function(x) length(x))
票数 1
EN

Stack Overflow用户

发布于 2017-03-25 00:54:27

这些元素被聚合到一个列表中。该字段中只有一个列表,但该列表有多个元素。因此,要获取列表中元素的数量,您需要像这样打开它:

代码语言:javascript
复制
length(consol[1,2][[1]])

另请参阅:

代码语言:javascript
复制
class(consol[1,2])
> [1] "list"
class(consol[1,2][[1]])
> [1] "character"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43004965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档