Как удалить заголовки (имена) после объединения нескольких файлов CSV - PullRequest
2 голосов
/ 27 мая 2019

Я хочу объединить данные из нескольких файлов CSV в одном и том же формате, чтобы я мог их проанализировать, но я не могу удалить заголовки / имена столбцов из нескольких объединенных файлов.

Я использовал lapplyФункция, чтобы взять список контекста всех этих файлов, и это выглядит примерно так:

ID X1 X2 ---> header of 1st csv file
1  5  6
2  6  9
.......
10 7  8

.

ID X1 X2 --> headers 2nd csv file
1  5  6
2  6  9
.......
10 7  8
e.t.c

Как я могу удалить символы заголовка, чтобы применитьматематические операции с этими данными?

Мой код:

data<-lapply(files, read.csv)
mean <-(mean(data$column2, na.rm=TRUE))

Я также пытался read.csv(headers=FALSE), но R не принимает это, когда функция находится внутри laply

Iожидайте среднее значение фрейма данных объединенных файлов, но я получаю ошибку:

В mean.default (data $ column2, na.rm = TRUE): аргумент не является числовым или логическим: возвращениеNA

Ответы [ 2 ]

0 голосов
/ 27 мая 2019

Если вы правильно прочитали data с заголовками, я думаю, что вам нужно сначала извлечь столбцы, а затем взять mean.

Вы можете извлечь столбец

1) По имени

mean(sapply(data, `[[`, 'column2'), na.rm = TRUE)

2) По позиции

mean(sapply(data, `[[`, 2), na.rm = TRUE)

С lapply вам нужно unlist сначала данные

mean(unlist(lapply(data, `[[`, 'column2')), na.rm = TRUE)
0 голосов
/ 27 мая 2019

Вы можете импортировать данные напрямую без имен столбцов:

read_matrix <- function (csvfile) {
    a <- read.csv(csvfile, header=FALSE)
    matrix(as.matrix(a), ncol=ncol(a), dimnames=NULL)
}
df <-  read_matrix('even_iops_Jan15.csv')

Другой вариант - установить их в нуль:

names(df) <- NULL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...