Re: [問題] 判斷資料值後做資料整理
※ 引述《amygm307 (簡單點ˇ)》之銘言:
: 判斷B欄值為0的那一列,為整筆資料的第一列
: 變成
: A B
: 1 1 0
: 2 1 5
: 3 3 na
: 因為我每筆資料B為0的位置都不一樣
: 目前想到的作法是用if去判斷df$B==0時回傳該值為第幾列
: 然後再刪掉前面資料df[-i,]
: 但是我不知道"回傳第幾列"應該怎麼寫
: 拜託各位大大幫幫小妹ˊˋ
: 一直找不到有用的解法
1.
library(data.table)
dt <- data.table(A = c(1,1,1,1,1,3), B = c(3,1,2,0,5,NA))
dt[ , rn := .I][rn >= which(B == 0)]
2.
library(dplyr)
df <- data.frame(A = c(1,1,1,1,1,3), B = c(3,1,2,0,5,NA))
df %>>% mutate(rn = 1:nrow(.)) %>>% filter(rn >= which(B == 0))
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.233.137.225
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1474432642.A.0F7.html
推
09/22 02:02, , 1F
09/22 02:02, 1F
有能力就早點掌握好的工具,不用在那浪費時間用那些沒效率的函數
而且大多數新手應該都只是處理表格式資料
類似SQL語法的dplyr很適合直接學習
而data.table會稍難,這個套件新手要摸熟才會需要花不少時間
※ 編輯: celestialgod (36.233.137.225), 09/22/2016 02:44:15
推
09/22 12:58, , 2F
09/22 12:58, 2F
→
09/23 04:58, , 3F
09/23 04:58, 3F
→
09/23 04:59, , 4F
09/23 04:59, 4F
討論串 (同標題文章)
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章