gpt4 book ai didi

r - 通过在不同向量中定义的因子来获取一个向量

转载 作者:行者123 更新时间:2023-12-04 11:24:13 25 4
gpt4 key购买 nike

假设我有两个向量,

v1 = c(1,2,1,4,5,6,2,2,4,5,5,6)
v2 = c('lo', 'lo', 'la', 'la', 'la', 'li', 'li', 'li', 'li', 'lo', 'li', 'la')

我想取 v1的平均值, 通过 lo, la, li 中定义的组 ( v2 ) .什么是不循环的有效方法?

谢谢!

最佳答案

这是 tapply 的标准票价:

tapply(v1, v2, mean)
# la li lo
# 4.000000 3.800000 2.666667

此外,一个有趣的方法可能是:
xtabs(v1 ~ v2)/table(v2)  ## sum divided by length

如果我猜测(其他人可以自由地实际进行基准测试),我会认为 tapplyby在这种情况下,性能将非常接近。 xtabs + table不应该太慢,但肯定会因为双重制表而变慢。因为所有的转换为 data.frame ,试图简化输出,等等,我想 aggregate成为最慢的方法。

关于r - 通过在不同向量中定义的因子来获取一个向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24853791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com