Итак, я пытаюсь прочитать несколько CSV-файлов, взять их первый столбец и создать новый файл. Мне удалось использовать qpcR и data.table, используя следующий код:
FileNames <- dir(pattern = "*.csv")
x <- integer()
for (FileName in FileNames) {
data <- read.csv(file = FileName, header=FALSE, skip=1)
y <- data[,1]
x<-qpcR:::cbind.na(x, y)
rm(data)
}
write.csv(x, file = 'test.csv')
Это прекрасно работает, однако я обнаружил, что могу читать только первый столбец моих данных, используя библиотеку data.table.
x <- integer()
for (FileName in FileNames) {
data <- fread(FileName,select=1,skip=1, header=FALSE)
y <- data[1:nrow(data),]
x<-qpcR:::cbind.na(x, y)
rm(data)
}
write.csv(x, file = 'test.csv')
Однако это, кажется, рассматривает y как значение данных или целое число, которое выдает ошибку:
Ошибка в data.table :: data.table (...):
Пункт 2 не имеет длины. Укажите хотя бы один элемент (например, NA, NA_integer_ и т. Д.), Который нужно повторить, чтобы соответствовать 11 строкам в самом длинном столбце. Или все столбцы могут иметь длину 0 для вставки строк в.
Любая помощь по этому вопросу была бы большой благодарностью.