R 中的因子加权值
在一个数据帧(R 中的因子加权值,r,summary,R,Summary,在一个数据帧(df)中,我有一个变量,它表示区域(一个因子),其他变量则表示每个观测值的权重。如果我想知道每个区域有多少个观测值,我只需要使用摘要(df$region) 我想知道的是,考虑到每个观察的权重,我如何才能看到每个区域的大小?您可以使用tapply按区域求和权重(我想这是您的意思,但如果我误解了,请澄清): >df摘要(df$地区) 中北部东北部西南部 55 46 49 50 >带(df、tapply(重量、区域、总和
df
)中,我有一个变量,它表示区域(一个因子),其他变量则表示每个观测值的权重。如果我想知道每个区域有多少个观测值,我只需要使用摘要(df$region)
我想知道的是,考虑到每个观察的权重,我如何才能看到每个区域的大小?您可以使用
tapply
按区域求和权重(我想这是您的意思,但如果我误解了,请澄清):
>df摘要(df$地区)
中北部东北部西南部
55 46 49 50
>带(df、tapply(重量、区域、总和))
中北部东北部西南部
27.73835 23.23487 24.71656 26.11786
如果您确实想要一些metric
*weight
,那么您可以将tapply
语句修改为weight
*metric
,而不是第一个参数的weight
> df <- data.frame(region=sample(levels(state.region), 200, rep=T), weight=runif(200))
> summary(df$region)
North Central Northeast South West
55 46 49 50
> with(df, tapply(weight, region, sum))
North Central Northeast South West
27.73835 23.23487 24.71656 26.11786