Có cách nào để tăng tốc quá trình sau trong R?Cách nhanh hơn để đọc nhiều csv vào một khung dữ liệu?
theFiles <- list.files(path="./lca_rs75_summary_logs", full.names=TRUE, pattern="*.summarylog")
listOfDataFrames <- NULL
masterDataFrame <- NULL
for (i in 1:length(theFiles)) {
tempDataFrame <- read.csv(theFiles[i], sep="\t", header=TRUE)
#Dropping some unnecessary row
toBeRemoved <- which(tempDataFrame$Name == "")
tempDataFrame <- tempDataFrame[-toBeRemoved,]
#Now stack the data frame on the master data frame
masterDataFrame <- rbind(masterDataFrame, tempDataFrame)
}
Về cơ bản, tôi đang đọc nhiều tệp csv trong một thư mục. Tôi muốn kết hợp tất cả các tệp csv vào một khung dữ liệu khổng lồ bằng cách xếp chồng các hàng. Vòng lặp có vẻ dài hơn khi masterDataFrame đang tăng kích thước. Tôi đang làm điều này trên một cụm linux.
Cảm ơn bạn. rbindlist thực sự tăng tốc độ lên! – WonderSteve
Sử dụng 'fread' thay vì' read.csv' nếu bạn đang đi xuống đường dẫn data.table .... – mnel