"mean of combined columns"表并与 R 中的原始表联接

  • 本文关键字:原始 mean of combined columns r
  • 更新时间 :
  • 英文 :


我有一个包含300000行和16列的文件(tekoopl(。第2列是PRICE,第13列是DISTRICT。(在DISTRICT列中,伦敦有不同的地区;例如,2000行与西区,4000行与伦敦区等。这些行是可互换的(。现在我陷入了以下问题:a.生成一个包含每个地区平均价格的表格b.将其与原始表格"tekoopl"结合起来。(因此,最终表不是聚合的,而是与原始表具有相同的行数(c.用PRICE和DISTRICT平均值之间的差值创建一个新列(PRICE-DISTRICE(。我只能计算PRICE列的平均/平均PRICE,但我需要所有行的平均PRICE"区域a"、所有行的区域b",并且新表(dfl07(的行数必须等于"tekoopl"中的行数。因为在那之后,我必须加入他们。我当然做不到。:-(有人能帮我吗?

tekoopl <- read.csv("datafiles/ppd_london_15161718.csv", 
stringsAsFactors = FALSE)  
str(tekoopl)  
dfl07 <- select(tekoopl, PRICE, DISTRICT) %>%  
GEM = round(mean(tekoopl$PRICE, na.rm = TRUE)) 

(我目前正在使用dplyr和tidyr软件包(

为每个地区的平均价格生成单独的表格:

dfl07 %>% dplyr::group_by(DISTRICT) %>% summarise(mean_price=mean(PRICE, na.rm=T))

如果你想把它放在你原来的表格中(所以列一个每个地区的平均奖金,我认为这就是你想要实现的(,那么:

dfl07 %>% dplyr::group_by(DISTRICT) %>% mutate(mean_price=mean(PRICE, na.rm=T))

创建每个地区的平均价格以及价格与地区平均价格之间的差异(用于参考tekpool数据帧(:

tekoopl %>% dplyr::group_by(DISTRICT) %>% mutate(mean_price=mean(PRICE, na.rm=T), price_diff=PRICE-mean_price)

最新更新