Re: [問題] 利用R 篩選欄位內相同資料
※ 引述《Tampa (光芒)》之銘言:
: ※ 引述《Tampa (光芒)》之銘言:
: : 作者: Tampa (光芒) 看板: Database
: : 標題: [SQL ] 篩選欄位內相同資料
: : 時間: Fri Aug 19 23:28:06 2016
: 謝謝各位大大回復
: 新增一個問題
: : 問題如下
: 手機號碼4 天數4 手機號碼5 天數5
: : 111 3 118 4
: : 112 4 113 5
: : 113 5 111 8
: : 115 5 116 9
: : 118 6 119 10
: : . . . .
: 篩選條件如下
: 1.當手機號碼4中 有符合手機號碼5的資料,則回傳天數4所對應欄位的資料
: (類似excel的index)
: : 希望呈現如下
: : 手機號碼4 天數4 手機號碼5 天數5
: : 111 3 111 8
: : 113 5 113 5
: 118 6 118 4
: 情境就是
: 想分析公司推完活動後,是否有明顯增加使用者使用的天數
: 感謝各位大大
cp_num_gen_f <- function(n) paste0("09", apply(matrix(sample(0:9, 8*n, TRUE),
n), 1, paste0, collapse =""))
dat <- data.frame(cp4 = cp_num_gen_f(10), nd4 = rpois(10, 5), cp5 = 0,
nd5 = rpois(10, 6), stringsAsFactors = FALSE)
dat$cp5 <- c(sample(dat$cp4, 3), cp_num_gen_f(7))
# 1.
match(dat$cp5, dat$cp4)
# 2.
library(dplyr)
dat %>% mutate(idx = match(cp5, cp4)) %>%
mutate(cp4_match = dat[idx, 1], nd4_match = dat[idx, 2]) %>%
filter(!is.na(cp4_match))
# cp4 nd4 cp5 nd5 idx cp4_match nd4_match
# 1 0969429990 7 0993267331 6 2 0993267331 2
# 2 0993267331 2 0941547740 4 4 0941547740 4
# 3 0999020937 4 0930712667 2 7 0930712667 1
8/22修改:調換index順序,才符合原PO的問題
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.253.89.216
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1471761205.A.03A.html
推
08/22 11:11, , 1F
08/22 11:11, 1F
→
08/22 11:12, , 2F
08/22 11:12, 2F
推
08/22 15:08, , 3F
08/22 15:08, 3F
→
08/22 15:08, , 4F
08/22 15:08, 4F
→
08/22 18:44, , 5F
08/22 18:44, 5F
→
08/22 18:44, , 6F
08/22 18:44, 6F
→
08/22 18:44, , 7F
08/22 18:44, 7F
→
08/22 18:44, , 8F
08/22 18:44, 8F
※ 編輯: celestialgod (118.170.43.225), 08/22/2016 22:43:26
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 7 篇):