Сохранение файлов .gz, загруженных из SFTP с помощью RCurl в R, казалось, было сжато дважды - PullRequest
0 голосов
/ 08 июня 2019

Когда я загружаю файлы .gz, содержащие файлы .nc4, из локальной базы данных в офисе, используя RCurl в R, файл кажется сжатым во время загрузки или когда я использую функцию save () в R.

Я провел сравнение между использованием моей программы R и командной строки.Используя командную строку, я могу загрузить файл .gz и разархивировать его, используя 7zip без проблем, а ncdf4 в R может прочитать файл.Допустим, файл .gz имеет размер X МБ, а файл .nc4 - Y МБ.

Используя мой сценарий R, загруженный файл .gz имеет размер меньше X МБ с файлом .gz.расширение.Когда я использую системную команду R, чтобы разархивировать его с помощью 7zip, он разархивирует файл без проблем, но теперь он имеет размер X МБ и идентичен исходному файлу .gz сверху (идентичен по размеру).Но теперь он больше не имеет расширения .gz.После разархивирования он теперь имеет размер Y МБ.Тем не менее, ncdf4 на R не может его прочитать.

Команды командной строки:

   #While on sftp server...
   get <filename>.gz
   #The file is a proper .gz file of X MB size on my host machine
   7z.exe e <filename>.gz
   #The file is now a .nc4 file of Y MB size
   file <- nc_open(<filename>) is successful

Код R

   library("RCurl")
   url <- paste0("<sftp server>, ".gz")
   zippedFile <- paste0(<downloaded file name>, ".gz")
   data <- getBinaryURL(url, userpwd = <credentials>, connecttimeout = 60)
   save(data, file = zippedFile)
   #The file is a proper .gz file of less than X MB size on my host machine
   system("\"C:/Program Files/7-Zip/7z.exe\" e <filename>.gz", intern = T)
   #The file is now X MB size on my host machine without the .gz extension
   system("\"C:/Program Files/7-Zip/7z.exe\" e <filename>", intern = T)
   #The file is decompressed successfully into Y MB size on my host
   file <- nc_open(<filename>) fails
   #Error: Error in R_nc4_open: NetCDF: Unknown file format

Я новичок в R, поэтому любойпомочь с пониманием того, как R или RCurl сжимает данные, было бы здорово!Я просмотрел бесчисленные источники и не нашел ответа.

...