首页 > 解决方案 > 如何在 R 中获取统计列?

问题描述

我有一个包含员工信息的数据集。我想在每个实例中添加带有统计信息的新列 data$smedio,例如其组的平均值。像这样的东西:

library(dplyr)
nombres<-c("Juan","Pedro","Alfonso","Luis") > ciudad<-c("Madrid","Barna","Barna","Madrid") 
dpto<-c("Finanzas","Produccion","Produccion","Produccion") 
salario<-c(25000,30000,28000,35000) 
data<-data.frame(nombres,ciudad,dpto,salario) 

例如,Pedro 和 Alfonso 的 data$smedio 的值等于 (30000+28000)/2=29000。两者的值相同(因为它们具有相同的 dpto 和相同的 ciudad)。其他实例值取决于每种情况。

我尝试用这句话创建那个新列......

data$smedio<-data %>% group_by(data$ciudad, data$dpto) %>% summarize(mean(salario)) 

买我得到那个错误:

$<-.data.frame( , smedio *tmp*, value = list( data$ciudad= c(1L, : 替换有 3 行,数据有 4

标签: rstatisticsdata-science

解决方案


数据 %>% group_by(ciudad, dpto) %>% summarise(mean(salario))


推荐阅读