Одним из способов является использование пакета sqldf
.Если вы знаете SQL, в больших файлах можно читать только те части, которые вам нужны.
Я буду использовать встроенный набор данных iris
, чтобы сделать пример воспроизводимым, сначала сохранив его на диск.
write.csv(iris, "iris.csv", row.names = FALSE)
Теперь проблема.
Аргумент row.names
похож нав инструкции write.csv
.
Обратите внимание на пробелы вокруг Sepal.Length
.Это связано с символом точки в имени столбца.
library(sqldf)
sql <- "select `Sepal.Length`, Species from file"
sub_iris <- read.csv.sql("iris.csv", sql = sql, row.names = FALSE)
head(sub_iris)
# Sepal.Length Species
#1 5.1 "setosa"
#2 4.9 "setosa"
#3 4.7 "setosa"
#4 4.6 "setosa"
#5 5.0 "setosa"
#6 5.4 "setosa"
И окончательная очистка.
unlink("iris.csv")