Я пытаюсь составить тепловую карту матрицы мест и видов. Благодаря Maurits Evers за часть этого кода я все еще не могу запустить его без сообщения об ошибке:
Установка имен строк в столбце устарела. Ошибка в
row.names<-.data.frame
(*tmp*
, значение = список (Сайт =
c ("AwarukuLower",: недопустимая длина 'row.names'
Было высказано предположение, что проблема может быть в осмотре и толчках. Я удалил пакеты tibble & tidyverse и вместо этого установил пакет readr для devtools. Я все еще получаю то же сообщение об ошибке и не могу понять, как это исправить. Данные прикреплены .
library(readr)
devtools::install_github("tidyverse/readr") #to install readr without tidyverse
bank_mean_wide_sp <- read.csv("/Users/Chloe/Desktop/Environmental Data Analysis/EDA.working.directory/bank_mean_wide.csv")
log_mean_wide_sp <- read_csv("/Users/Chloe/Desktop/Environmental Data Analysis/EDA.working.directory/log_mean_wide.csv")
as.matrix(bank_mean_wide_sp)
as.matrix(log_mean_wide_sp)
Сохранить информацию о сайте в виде имен строк
logdf <- log_mean_wide_sp;
base::row.names(logdf) <- log_mean_wide_sp[, 1];
Удалить нечисловой столбец
logdf <- logdf[, -1];
Используйте as.matrix
для преобразования data.frame в матрицу
logmap <- heatmap(
as.matrix(logdf),
col = cm.colors(256),
scale = "column",
margins = c(5, 10),
xlab = "species", ylab = "Site",
main = "heatmap(<Auckland Council MCI data 1999, habitat:bank>, ..., scale = \"column\")")
Возвращает сообщение об ошибке, как указано выше:
Установка имен строк в столбце устарела. Ошибка в
row.names<-.data.frame
(*tmp*
, значение = список (Сайт =
c ("AwarukuLower",: недопустимая длина 'row.names'
В качестве альтернативы я попытался запустить код без первых трех строк и использовал as.numeric и as.matrix для преобразования data.frame в числовую матрицу. Это тоже не сработало.
as.matrix(logdf)
logmap <- heatmap(as.numeric(logdf),
col = cm.colors(256),
scale = "column",
margins = c(5, 10),
xlab = "species", ylab = "Site",
main = "heatmap(<Auckland Council MCI data 1999, habitat:bank>, ..., scale = \"column\")")
Возвращает эту вторую ошибку:
Ошибка в тепловой карте (as.numeric (logdf), col = cm.colors (256), scale =
"column",: (список) объект не может быть приведен к типу 'double'