我正在R中進行一些編碼。我想要顯示對列ID和NAME具有重複但行爲不同的AGE的行。提取對某些列有重複但在另一列中唯一的行
例如,我有這個表:
ID | NAME | AGE
111| Mark| 22
222| Anne| 21
333| Chery| 30
444| Megan| 16
555| Charles| 37
111| Mark| 23
222| Anne| 22
333| Chery| 30
111| Mark| 22
截至目前,我有這樣的代碼:
readfile <- read.csv(file='/home/user/shane/names.csv')
dat <- data.frame(ID=c(readfile$ID),NAME=c(readfile$NAME),AGE=c(readfile$AGE))
nam <- duplicated(dat[,c('ID','NAME)]) | duplicated(dat[,c('ID','NAME], fromLast = TRUE)
readfile[nam,]
輸出看起來是這樣的:
ID | NAME | AGE
111| Mark| 22
222| Anne| 21
333| Chery| 30
111| Mark| 23
222| Anne| 22
333| Chery| 30
111| Mark| 22
我想輸出爲:
ID | NAME | AGE
111| Mark| 22
222| Anne| 21
111| Mark| 23
222| Anne| 22
111| Mark| 22
我想刪除ID = 333的列,因爲它們在Age中具有相同的值。有人會有什麼建議嗎?
我很困惑的選擇。你如何達到理想的輸出?通過過濾原始或過濾掉重複項目的對象?沒有'ID = 33',只有'333'。 –
嗨,對不起,如果我不清楚。這將是您過濾掉重複項的對象。然後顯示所有不一致的年齡。例如,如果同一個id和name的年齡是22,23,22。我想要顯示這些行。對不起我的英語不好。 – shia1717