作者qibqib (inside my heart)
看板R_Language
標題[問題] 多條件篩選特定資料出來
時間Mon Mar 25 12:24:45 2019
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
新手(沒寫過程式,R 是我的第一次)
[問題敘述]:
我有兩組資料,其中一組資料只有三個欄位,大約有100多筆數據
客戶ID 購買日期 交貨日期
51484 2012/6/23 2012/7/27
82459 2012/5/7 2012/8/30
50702 2012/2/16 2012/3/8
50702 2013/5/13 2013/6/1
36131 2012/07/24 2012/8/27
第二組資料 包含第一組資料全部欄位外,同時還有其他欄位,約3萬筆數據
客戶ID 購買日期 交貨日期 訂單編號 購買總額
3096 2015/7/6 2015/7/9 20150701 455
3767 2013/5/5 2013/8/8 20130314 622
3946 2015/11/2 2015/11/11 20150722 798
6066 2015/1/6 2015/1/15 20150101 559
6587 2013/6/14 2013/7/29 20130336 231
6789 2013/9/13 2013/11/19 20130350 780
6977 2012/12/27 2013/2/25 20120236 560
8275 2013/2/28 2013/3/29 20130304 320
因為第一組資料客戶ID、購買日期及交貨日期都會重複,
但三組欄位資料,加起來就不會有重複,能對應到第二組資料某筆資訊
如何結合第一組資料所有條件,找出位於第二組資料某筆全部資訊,
篩選出來,另存新檔(xls ,txt)
相關檔案範例,存放在下列雲端空間
https://nofile.io/f/RbUoag4Ma5E/data.xlsx
[環境敘述]:
Windows 8.1 R v3.5.1
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.161.200
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1553487890.A.8FF.html
※ 編輯: qibqib (180.217.161.200), 03/25/2019 12:25:49
1F:推 celestialgod: unique + merge 03/25 12:28
2F:推 frojet: 我好像都是把三個欄位轉換成文字檔再串起來,成為唯一值 03/25 12:52
3F:→ frojet: ,再去比對第二組資料篩選出來 03/25 12:52
4F:→ celestialgod: data.table的unique直接就可以三個欄位一起取唯一值 03/25 13:31
5F:→ celestialgod: 了,然後再用merge把兩個data.table合併 03/25 13:31
6F:推 frojet: 有範例寫法嗎? 感覺還是很抽象 是因為我程度太差的緣故 03/25 17:39
7F:→ frojet: ? 03/25 17:39
8F:→ andrew43: 結構上就是 merge(unique(data1), data2) 細節視情況 03/25 19:34