看板 Statistics 關於我們 聯絡資訊
※ 引述《a15801580max (blacktea)》之銘言: : [軟體程式類別]: : R : [程式問題]: : 同時刪除多列數據 : [軟體熟悉度]: : 新手 : [問題敘述]: : 簡單刪除幾列數據的指令我已經會了 : 但我有一組50萬筆的數據 : 例如現在想刪除包含A值的某幾列(可能有幾千幾萬列), : 請問R語言有辦法一次刪掉嗎? : 現在想到一個方法 : 先在EXCEL先把全部的A值刪掉後輸入到R : 再用刪除缺失值的方法來達成我的目標 : 請問有更好的做法嗎 供你參考: library(nycflights13) library(data.table) nrow(flights) # 336776 flightsDT <- data.table(flights) cols <- c("arr_time", "sched_arr_time", "air_time") judgeFunc <- function(x, v){ # avoid NAs out <- rep(FALSE, length(x)) out[x == v] <- TRUE return(out) } system.time({ flightsDT[ , removeMark := Reduce("|", lapply(.SD, judgeFunc, v = 830)), .SDcols = cols] newFlightsDT <- flightsDT[removeMark == FALSE][ , removeMark := NULL] }) # user system elapsed # 0.03 0.00 0.03 nrow(newFlightsDT) # 336098 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.224.97.194 ※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1507984878.A.250.html
tan800630: 推 10/14 23:31
a15801580max: 推 10/17 19:45