gpt4 book ai didi

unique.default(x) unique() 中的 R 错误仅适用于向量

转载 作者:行者123 更新时间:2023-12-03 12:14:44 34 4
gpt4 key购买 nike

我创建了一个名为 state 的数据集来自内置矩阵state.x77有两个连续变量(人口和收入)和两个因素变量(区域和面积)。

我使用 tapply() 计算了按地区划分的平均收入, by() , aggregate() , 和 ave()查看返回对象的格式。

但是调用ave()给出错误

Error in unique.default(x) : unique() applies only to vectors



代码是:
## Mean income by region
tapply(state$inc, state$region, mean)
# Northeast South North Central West
# 4570.222 4011.938 4611.083 4702.615

by(state$inc, state$region, mean)
# state$region: Northeast
#
# [1] 4570.222
# [...]

aggregate(state$inc, list(state$region), mean)
#
# Group.1 x
# 1 Northeast 4570.222
# 2 South 4011.938
# 3 North Central 4611.083
# 4 West 4702.615

ave(state$inc, state$region, mean)
# Error in unique.default(x) : unique() applies only to vectors

为什么会发生错误?我该如何预防?

最佳答案

这是一个很常见的错误,你需要使用命名参数FUN :

ave(state$inc, state$region, FUN = mean)

否则 mean将被解释为另一个分组变量( ...ave 参数的一部分。)

关于unique.default(x) unique() 中的 R 错误仅适用于向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16681770/

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