У меня есть файл csv, размер которого равен 7 ГБ. На самом деле я не могу открыть файл в R или excel из-за его гигантского размера и, следовательно, не могу каким-либо образом манипулировать им. Любые мысли или трюки о том, как импортировать такой большой набор данных в R?Импорт больших данных в R
ответ
Try:
library(RevoScaleR)
MyCsv <- file.path(rxGetOption("sampleDataDir"), "mycsv.csv")
MyXdf <- "mycsv.xdf"
Это преобразует файл в файл XDF, который использует алгоритмы для загрузки и чтения файла. Однако работа с данными в этом формате потребует использования других функций из пакета RevoScaleR, как FYI.
Рассмотрите базу данных предприятия, чтобы импортировать и открыть большой файл CSV. R может подключаться к любой базе данных, совместимой с ODBC, включая MS Access, MySQL, SQL Server, SQLite, Oracle и т. Д., Используя пакет RODBC. Реляционные, индексированные базы данных хорошо масштабируются с большими данными. И оттуда вы даже можете запросить определенное количество этих данных в фреймворке данных, выбирая конкретные столбцы и фильтруя строки по различным критериям.
library(RODBC)
# LISTS ALL INSTALLED ODBC SOURCES (DRIVERS AND DSNs)
odbcDataSources()
# SQL SERVER
myconn <-odbcDriverConnect('driver={SQL Server};server=SOMESERVER;database=DBName;
trusted_connection=yes;UID=username;PWD=password')
df1 <-sqlFetch(myconn, "dbo.Table1") # WHOLE TABLES/VIEWS
df2 <- sqlQuery(myconn, "select * from dbo.Table1 where group = 1") # SELECT QUERIES
close(myconn)
# MySQL
myconn <-odbcConnect('somedsn;host=localhost;database=DBName;UID=username;PWD=password')
df1 <-sqlFetch(myconn, "Table1")
df2 <- sqlQuery(myconn, "select * from Table1")
close(myconn)
# MS ACCESS
myconn <-odbcDriverConnect('driver={Microsoft Access Driver (*.mdb, *.accdb)};
DBQ=C:\\PathTo\\DatabaseName.accdb')
df1 <-sqlFetch(myconn, "Table1")
df2 <- sqlQuery(myconn, "select * from Table1")
close(myconn)
Кроме того, одна вещь, которую вы изучаете при обработке данных как в статистических пакетах, так и в базах данных, - это столбцы, более ресурсоемкие, чем строки. Очень широкие наборы данных используют емкость памяти, а не очень долго. Например, предел столбца Excel xlsx равен 2^14 или 16,384, но предел строки равен 2^20 или 1 048 576. MySQL имеет жесткий предел 4096 столбцов на таблицу; SQL Server - 1,024 для нешироких таблиц; и MS Access на 255, при этом ни одна из баз данных не поддерживает объявленный предел для строк, кроме ограничений для памяти.
Для статистических пакетов (конкурентов R) SAS и Stata имеют ограничение 32 767 переменных с обходными способами в зависимости от настроек и типов компьютеров. Удивительно, что SPSS IBM может содержать до 2,15 миллиарда переменных! Что касается R, существует историческая цифра 2^31 - 1 elements для любого столбца вектора, матрицы, массива, списка или столбца данных (из-за 32-битного наследия индексирования). но как Python data frames, размер и обработка набора данных должны быть функцией емкости ОЗУ компьютера.
С учетом сказанного, рассмотрите разбивку CSV-файла, извлечение ненужных столбцов и удаление длинных текстов, которые не нужны для анализа, но занимают ресурсы в байтах.
- 1. Импорт больших данных в postgresql
- 2. Импорт данных в R
- 3. Импорт данных в R
- 4. Агрегирования больших данных в R
- 5. Импорт больших наборов данных в Couchbase
- 6. Импорт больших баз данных в MySQL
- 7. Импорт данных Делитель в R
- 8. Импорт грязных данных в r
- 9. Импорт данных XML в R
- 10. Импорт данных Excel в R
- 11. Импорт больших CSV-файлов
- 12. Импорт, отображение и кеширование больших данных
- 13. Импорт/экспорт больших баз данных mysql
- 14. read_csv импорт больших чисел
- 15. Построение очень больших наборов данных в R
- 16. Загрузка больших данных SAS в R/Python
- 17. R Расчет циркулировать в больших данных
- 18. Алгоритм подсчета для больших данных в R
- 19. Импорт и преобразование данных R
- 20. Swift Импорт больших данных данных JSON и данных ядра
- 21. Импорт неполных данных в матрицу в R
- 22. Импорт данных из XML-файла в R
- 23. Импорт данных в R на основе дат
- 24. данных сайта Импорт SharePoint в R
- 25. Импорт данных со специальными символами в R
- 26. Импорт данных в R - разные валюты
- 27. Импорт CIFAR - 10 Набор данных в R
- 28. Импорт файла данных SAS в R
- 29. Импорт данных из файла JSON в R
- 30. Импорт набора данных в конкретном пути R
Сколько у вас памяти? – Gregor
Недостаточно очевидно. Но я думаю, что это не имеет значения. Я хочу знать, что я могу сделать ПОТОМУ ЧТО У меня недостаточно памяти для работы. Я не могу себе представить, что R может обрабатывать такой большой набор данных, независимо от размера памяти. Разве это не так? – theforestecologist
Просьба предоставить некоторую информацию о количестве памяти, которую вы имеете, и о типе данных, содержащихся в CSV (числовой/символ, если он разрежен или нет). На этот вопрос нет ни одного ответа. –