[問題] 兩個dataframe同個變數找出相同的值

看板R_Language作者 (小刀會序曲)時間7年前 (2018/05/23 01:42), 編輯推噓0(002)
留言2則, 2人參與, 7年前最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 我有兩個dataframe,都有類別變數X1,第一個dataframe(t1)的x1為 1 1 2 2 3 3 4 5 第二個(t2)x1為 1 2 4,最後的結果想要 1 1 2 2 4 ,然後其他的變數都取第一個dataframe 的。 [程式範例]: 有嘗試用merge,但不知道錯在哪.. t3<-merge(t1,t2,by="x1",all=T) 後面的all ,all.x ,all.y不管是T或F都試過了,合併出來最後的nlevels(t3$x1)都是5 而不是 3,謝謝 [環境敘述]: 請提供 sessionInfo() 的輸出結果, 裡面含有所有你使用的作業系統、R 的版本和套件版本資訊, 讓版友更容易找出錯誤 [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.212.73 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1527010951.A.868.html

05/23 01:49, 7年前 , 1F
t1[t1$x1 %in% t2$x1, ]
05/23 01:49, 1F

05/23 08:55, 7年前 , 2F
合併完 droplevels(t3$x1) 再重新 as.factor()
05/23 08:55, 2F
文章代碼(AID): #1R15Q7Xe (R_Language)
文章代碼(AID): #1R15Q7Xe (R_Language)