У меня есть папка с примерно 160 файлами, которые отформатированы с тремя столбцами: время начала, переменная1 'x' и переменная 2 'y'. Начало указано в R как строка, но это временная переменная, которая является Часом: Минута: Второе: FractionalSecond. Мне нужно удалить дробную секунду. Если бы я мог обойти это, было бы здорово, но было бы просто просто удалить дробную секунду, используя что-то вроде substr (file $ onset, 1,8).R: Как изменить данные в столбце по нескольким файлам. Помогите понять lapply
Мои файлы именуются в формате, аналогичном File001 File002 File054 File1001
onset X Y
00:55:17:95 3 3
00:55:29:66 3 4
00:55:31:43 3 3
01:00:49:24 3 3
01:02:00:03
Я пытаюсь использовать lapply. lapply кажется простым, но мне сложно понять это. Приведенный ниже код возвращает ошибку, в которой конечная строка не содержит 3 элемента. Для моего окончательного вывода важно, чтобы моя последняя строка имела только значение для начала.
lapply(files, function(x) {
t <- read.table(x, header=T) # load file
t$onset<-substr(t$onset,1,8)
out <- function(t)
# write to file
write.table(out, "filepath", sep="\t", quote=F, row.names=F, col.names=T)
})
Похоже ваша ошибка read.table вопрос, то есть одна из линии в одном из 160 файлов не имеет 3 элемента. попытайтесь выяснить, реплицируется ли эта ошибка при запуске 'lapply (files, function (x) read.table (x, header = T))' –