用于运行的代码:
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)
寻求一种按列号使用子设置的方法。
我认为tibble
类发生了一些事情---我遇到了类似的事情。请尝试以下操作。它对我有用:
class(data_set) <- "data.frame"
featurePlot(x = data_set[,-1], y = data_set[,1])
您可能想在 GitHub 上提交问题,因为您的第二种方法(非常明智(不起作用确实很奇怪。我可以确认您尝试的两种方法也为我生成了相同的错误。