我有以下数据框
df<-data.frame("EmailReach"<-c(1:20), "MobileReach"<-c(21:40))
names(df)<-c("EmailReach", "MobileReach")
我列出了两个变量如下
Channel<-c("Email", "Mobile")
我想列出通道变量的各个加权平均值。
for(i in paste0(Channel, "Reach"))
{print(min(weighted.mean(df[,names(df)%in%paste0(Channel, "Reach")][i])))}
上面的代码给出了加权平均值,但不是变量的名称。我如何完成这个
答案 0 :(得分:1)
您可以使用dplyr
中的summarise_all
:
require(dplyr)
df %>% summarise_all(weighted.mean)
EmailReach MobileReach
1 10.5 30.5