Я хочу прочитать файл csv как матрицу, а матрица - числовая. followwing мой кодкак читать данные в виде матрицы?
1, прочитать данные
mydata<-read.csv("mydata.csv", header = TRUE, sep=',', check.names = FALSE)
str(mydata)
2, преобразование как числовые данные
mydata_1<-data.matrix(mydata)
str(mydata_1)
Для первого шага, на выходе будет нормально
, но для второго шага, когда я хочу преобразовать dataframe в числовую матрицу, выход изменяется следующим образом. Посмотрите, что имена ростов и имена столбцов были изменены, а значения ячеек также не соответствуют истине, которые не нужны.
Я также пробовал следующий синтаксис, но он дал тот же результат, что и выше.
mydata_1<-sapply(mydata, as.numeric)
и вот ссылка моего файла данных link of mydata
Любое предложение ценится.
Моей догадки (и я не буду загружать данные Вы должны сделать свой вопрос [воспроизводимым] (http://stackoverflow.com./questions/5963269/how-to-make-a-great-r-воспроизводимый пример) без ссылки на внешние данные) заключается в том, что ваши данные были факторами для начала. – Heroka
Вы пробовали 'read.csv (..., na.strings =" - ")'? –
Вы также можете попробовать 'row.names = 1' в вашем вызове' read.csv() ', чтобы сделать этот первый столбец в именах строк. И дополнительная заметка: 'header = TRUE' и' sep = "," 'являются значениями по умолчанию в' read.csv() '. Вам не нужно писать их. –