R SplitRatio参数中的Sample.Split必须为i[0,1]

R SplitRatio参数中的Sample.Split必须为i[0,1],r,R,我得到以下错误: sample.split中出错:“SplitRatio”参数必须是i[0,1]范围或[1,长度(Y)]范围 当我尝试运行以下代码时: set.seed(1000) library(caTools) split = sample.split(letters$isB, SplitRatio = 0.5) 也许字母$isB长度是0?前面的答案() “可能字母$isB长度为0?” 在更多的上下文中是有意义的。在我与另一个MOOC的经历中,我收到了这个错误,并开始寻找答案 指 我注意到

我得到以下错误:

sample.split中出错:“SplitRatio”参数必须是i[0,1]范围或[1,长度(Y)]范围

当我尝试运行以下代码时:

set.seed(1000)
library(caTools)
split = sample.split(letters$isB, SplitRatio = 0.5)

也许
字母$isB
长度是0?

前面的答案()

“可能字母$isB长度为0?”

在更多的上下文中是有意义的。在我与另一个MOOC的经历中,我收到了这个错误,并开始寻找答案

我注意到,如果您试图拆分的变量不存在,则会生成错误-因为键入错误。因此,错误消息误导编码器查看SplitRatio常量,而不是正在拆分的变量

split=sample.split(字母$THISDOESNOTEXIST,SplitRatio=0.5)

在我的例子中,这个输入错误就是变量名的情况,所以很难看到语法错误。修复该类型清除了此错误


我希望这对您有用。

语法没有问题。您可能拼写错误的结果变量(字母$isB)。由于字母$isB不存在(或未加载),因此会出现该错误。

我有完全相同的问题,并且我确信语法和变量都没有问题。
更有趣的是,如果我在Rmarkdown上手动运行相关的块,代码就会工作,但是当我从上到下运行整个标记时,它会返回错误

我收到了一个类似于上面列出的错误。我意识到我忘了在下面列出的代码中更改变量

split = sample.split(dataset$Profit, 
从利润到销售单位(在我的实际数据集中可变)与另一个项目代码中的利润。希望这能有所帮助-我在下面列出了我的代码和错误

> library(caTools)
> set.seed(123)
> split = sample.split(dataset$Profit, SplitRatio = .8)
Error in sample.split(dataset$Profit, SplitRatio = 0.8) : 
  Error in sample.split: 'SplitRatio' parameter has to be i [0, 1] range or [1, length(Y)] range
> training_set = subset(dataset, split == TRUE)
Error in split == TRUE : 
  comparison (1) is possible only for atomic and list types
> test_set = subset(dataset, split == FALSE)
Error in split == FALSE : 
  comparison (1) is possible only for atomic and list types
set.seed(1000)
图书馆(caTools)
拆分=示例。拆分(字母$isB,拆分比率=0.5)

isB应该是因变量的标签,在数据集中查找该名称


您可以找到引发此错误的原因。

太好了。你的问题是什么?我如何让这个函数工作?我的语法似乎没有错误。我真是太棒了。如果它是可复制的,那么诊断起来就容易多了,但是
字母$isB
是无效的。