У меня есть модель классификатора ML в R, которая вводит обучающий набор и набор тестов через два больших файла .csv
и делает прогноз. Тем не менее, эта модель использует довольно большие файлы данных ( 232 особенности 120k + наблюдения ) и является частью гораздо большего конвейера, который использует S-lang и C. Тестирование проводится в режиме реального времени, так что для простоты ведение конвейера, все данные проходят через различные процессы в виде файлов FITS.
Основным HDU входного файла FITS является изображение нулевого размера. Единственным другим расширением является двоичная таблица с размерами 232 столбца х 120412 строк.
R не имеет никаких инструментов для непосредственного манипулирования файлами FITS, поэтому я пытаюсь использовать пакет FITSio для считывания двоичной таблицы в кадр данных, который я затем могу использовать для классификатора. (Должен отметить, что я довольно новичок в формате FITS)
library(FITSio);
filename <- system.file("testdata.fits", package = "FITSio");
zz <- file(description = filename, open = "rb");
header0 <- readFITSheader(zz); # read primary header
header <- readFITSheader(zz); # read extension header
D <- readFITSbintable(zz, header);
close(zz)
Это выдает ошибку, говорящую
Error in if (nchar(inpString) != 2880) { : argument is of length zero
Что я делаю не так?
Кроме того, есть ли более простой способ импортировать файл FITS и преобразовать его в файл CSV (или просто в любой используемый фрейм данных) в R?