用于运行的代码:
library(caret)
library(tidyverse)
data_set <- diamonds %>%
filter(row_number() <= 1000) %>%
select(carat, depth)
featurePlot(x = data_set[,-1], y = data_set[,1])
现在失败,并
Error in diff(as.numeric(y[ord])) :
(list) object cannot be coerced to type 'double'
以下内容也失败:
featurePlot(x = as.data.frame(data_set[,-1]), y = as.data.frame(data_set[,1]))
但是下面的作品:
featurePlot(x = data_set$depth, y = data_set$carat)
寻求一种按列号使用子设置的方法。
答案 0 :(得分:1)
我认为tibble
类中发生了某些事情-我遇到了类似的事情。请尝试以下方法。它对我有用:
class(data_set) <- "data.frame"
featurePlot(x = data_set[,-1], y = data_set[,1])
您可能想在GitHub上提交问题,因为第二种方法(非常明智)不起作用确实很奇怪。我可以确认,您尝试过的两种方法也会为我产生相同的错误。