Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 中的因子加权值_R_Summary - Fatal编程技术网

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