我想组合不同长度的数据帧而不是重复值或na

时间:2017-07-14 00:11:55

标签: r dataframe dplyr

我在R里很新鲜,在网上看了很多但是找不到我正在追求的答案。

我有4个不同长度和列的数据帧。我希望将所有列并排放置而不获取NA或重复值,因为我现在使用下面的代码:

summBC <- summary %>% 
  group_by(BuildingClass) %>% 
  summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Building class

summOC < -summary %>% 
  group_by(OccupancyType) %>% 
  summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Occupancy type

summCY <- summary %>% 
  group_by(City) %>% 
  summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on City

summCR <- summary %>% 
  group_by(Cresta) %>% 
  summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Cresta

pt <- data.frame(summBC,summOC,summCY,summCR)

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

这样的事情可能会将它们合并为一个数据框

summBC <- summary %>% group_by(BuildingClass) %>% summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Building class
summBC$rn <- c(1:nrow(summBC))

summOC<-summary %>% group_by(OccupancyType) %>% summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Occupancy type
summOC$rn <- c(1:nrow(summOC))

summCY<-summary %>% group_by(City) %>% summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on City
summCY$rn <- c(1:nrow(summCY))

summCR<-summary %>% group_by(Cresta) %>% summarise(TotalTIV=sum(as.numeric(TotalTIV))) #Pivot table on Cresta
summCR$rn <- c(1:nrow(summCR))


df <- Reduce(function(x, y) merge(x, y, by = "rn", all = TRUE), list(summBC, summOC, summCY, summCR))