2019-01-31
閱讀量:
2115
R語言中如何判斷并刪除合并相同行
問題描述:
某兩行除了一個屬性A不同,其他屬性全部相同。某兩行除了一個屬性B不同,其他全部相同,該如何合并呢?
由于是用shiny讀取excel并進(jìn)行相關(guān)操作,可能有的excel只有屬性A重復(fù),有的只有屬性B重復(fù),有的A和B都重復(fù)。
(注:只有SITE和Kind會出現(xiàn)重復(fù),且ID是唯一識別標(biāo)識)
解決方法:
##define data frame
dat <- data.frame(ID=c(8,8,4,5,9,9),
? ?? ?? ?? ?? ?? ?SITE=c('beijing','shanghai','beijing','beijing','shanghai','shanghai'),
? ?? ?? ?? ?? ?? ?Kind=c(rep('baby',5),'beauty'),
? ?? ?? ?? ?? ?? ?Volume=c(1,1,4,5,2,2))
dat
dat.new <- by(data = dat,INDICES = dat$ID,FUN = function(x){
??site.new <- paste(unique(x$SITE),collapse = ',')
??kind.new <- paste(unique(x$Kind),collapse = ',')
??dat2 <- x[1,]
??dat2$SITE <- site.new
??dat2$Kind <- kind.new
??dat2
})
dat.new <- dat.new[as.character(unique(dat$ID))]
dat.new <- do.call(rbind,dat.new)
rownames(dat.new) <- NULL
dat.new






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論