【问题标题】:Mean of elements over a list列表中元素的平均值
【发布时间】:2020-07-12 17:38:09
【问题描述】:

我想得到这个列表中所有元素的平均值。我希望结果是一个数字。我试过 sapply 但没有提供想要的结果。

[[1]]
[1] 6.3

[[2]]
[1] 5.8

[[3]]
[1] 7.1

[[4]]
[1] 6.3

[[5]]
[1] 6.5

[[6]]
[1] 7.6

[[7]]
[1] 4.9

[[8]]
[1] 7.3

[[9]]
[1] 6.7

[[10]]
[1] 7.2

[[11]]
[1] 6.5

[[12]]
[1] 6.4

[[13]]
[1] 6.8

[[14]]
[1] 5.7

[[15]]
[1] 5.8

[[16]]
[1] 6.4

[[17]]
[1] 6.5

[[18]]
[1] 7.7

[[19]]
[1] 7.7

[[20]]
[1] 6

[[21]]
[1] 6.9

[[22]]
[1] 5.6

[[23]]
[1] 7.7

[[24]]
[1] 6.3

[[25]]
[1] 6.7

[[26]]
[1] 7.2

[[27]]
[1] 6.2

[[28]]
[1] 6.1

[[29]]
[1] 6.4

[[30]]
[1] 7.2

[[31]]
[1] 7.4

[[32]]
[1] 7.9

[[33]]
[1] 6.4

[[34]]
[1] 6.3

[[35]]
[1] 6.1

[[36]]
[1] 7.7

[[37]]
[1] 6.3

[[38]]
[1] 6.4

[[39]]
[1] 6

[[40]]
[1] 6.9

[[41]]
[1] 6.7

[[42]]
[1] 6.9

[[43]]
[1] 5.8

[[44]]
[1] 6.8

[[45]]
[1] 6.7

[[46]]
[1] 6.7

[[47]]
[1] 6.3

[[48]]
[1] 6.5

[[49]]
[1] 6.2

[[50]]
[1] 5.9

【问题讨论】:

    标签: r


    【解决方案1】:

    您拥有的列表似乎是 50 个数字向量,每个长度为 1。如果您只想要列表中所有元素的平均值,请使用 unlist() 函数

    mean(unlist(...))
    

    将列表对象的名称放在... 所在的位置。 unlist() 函数会将其分解为单个向量,在本例中长度为 50。 mean() 函数只取向量的平均值,这就是您需要将列表转换为向量的原因。

    # example data
    listA <- list(4,6,9,6,4,5,2,4,9,8,6,3,5,2,7)
    # mean of the list
    mean(unlist(listA))
    

    【讨论】:

    猜你喜欢
    • 2021-09-30
    • 2013-07-22
    • 2011-11-30
    • 1970-01-01
    • 1970-01-01
    • 2017-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多