Мой вопрос: как сохранить вывод, т.е. mydata
mydata=array(sample(100),dim=c(2,100,4000))
Достаточно быстро?
Я использовал пакет reshape2
, как это предлагалось здесь.
melt(mydata)
А также
write.table(mydata,file="data_1")
Но на сохранение данных в файл уходит больше часа. Я ищу другие, более быстрые способы выполнения работы.
2 ответа
Я настоятельно рекомендую обратиться к этому отличному сообщению, которое, безусловно, помогает в прояснить проблемы с сохранением файлов.
В любом случае, saveRDS
может быть наиболее подходящим для вас. В данном случае более существенная разница заключается в том, что save
может сохранять множество объектов в файл за один вызов, в то время как saveRDS
, будучи функцией нижнего уровня, работает с одним объектом за раз. .
save
и load
позволяют сохранить именованный объект R в файл или другое соединение и снова восстановить этот объект. Но при загрузке именованный объект восстанавливается в текущей среде с тем же именем, что и при сохранении.
Вместо этого saveRDS
и loadRDS
позволяют сохранить один объект R в соединении (обычно файл) и восстановить объект, возможно, с другим именем. Низкоуровневая работоспособность делает функции RDS
более эффективными, вероятно, для вашего случая.
Прочтите текст справки для saveRDS, используя? SaveRDS. Вероятно, это будет лучший способ сохранять и загружать большие фреймы данных.
saveRDS(yourdata, file = "yourdata.Rda")
Похожие вопросы
Связанные вопросы
Новые вопросы
r
R — это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, используйте минимально воспроизводимые примеры, которые другие могут запустить с помощью копирования и вставки. Показать желаемый результат полностью. Используйте dput() для данных и укажите все небазовые пакеты с помощью library(). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. Для вопросов по статистике используйте https://stats.stackexchange.com.