Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中创建名为clean_data的函数_R_Function_Loops_Boolean_Data Analysis - Fatal编程技术网

在R中创建名为clean_data的函数

在R中创建名为clean_data的函数,r,function,loops,boolean,data-analysis,R,Function,Loops,Boolean,Data Analysis,我是R世界的新手,必须创建一个向量。 数据0) 打印(“positive”) 其他的 打印(“负片”) 但现在它要求: 编写一个名为“clean data”的函数,该函数接受一个数字向量,并返回一个相同长度的向量“ret”,如果输入向量第i个元素为正,则ret[i]=1,否则,则ret[i]=0。要开始,请为函数创建一个单独的R块,并使用以下shell: clean data我相信这就是您要寻找的。请注意函数中如何使用ifelse,而不是单独使用if和else函数。正如您所看到的,此函数将使用

我是R世界的新手,必须创建一个向量。
数据0)
打印(“positive”)
其他的
打印(“负片”)
但现在它要求:

编写一个名为“clean data”的函数,该函数接受一个数字向量,并返回一个相同长度的向量“ret”,如果输入向量第i个元素为正,则ret[i]=1,否则,则ret[i]=0。要开始,请为函数创建一个单独的R块,并使用以下shell:


clean data我相信这就是您要寻找的。请注意函数中如何使用ifelse,而不是单独使用if和else函数。正如您所看到的,此函数将使用数字字符串作为输入,但我添加了一个在您之前创建的数据上运行的实例。但我想补充的是这些练习的目的实际上是让我们挠头,自己解决问题,所以我建议你下次继续尝试:)

数据0)打印(“正片”)或打印(“负片”)
}

clean_data我相信这就是您要寻找的。请注意函数中如何使用ifelse,而不是单独使用if和else函数。正如您所看到的,此函数将使用数字字符串作为输入,但我添加了一个实例,它在您创建的以前的数据上运行。但我想补充一下这些练习真的让我们挠头,试着自己解决问题,所以我建议你下次继续尝试:)

数据0)打印(“正片”)或打印(“负片”)
}

clean_data
clean data 0
是您的函数。现在将其称为ie
clean_data(data)
欢迎使用堆栈溢出。请记住R是矢量化的。因此,使用for循环速度慢且效率低。请查看以下语句的结果:data>0 if else(data>0,“正”、“负”)as.numeric(data>0)`
clean data 0
是您的函数。现在将其称为ie
clean_data(data)
欢迎使用堆栈溢出。请记住R是矢量化的。因此,使用for循环速度慢且效率低。请查看以下语句的结果:data>0 ifelse(data>0,“正”、“负”)作为.numeric(data>0)`谢谢!我很抱歉我的编码知识不符合标准,但感谢您的反馈。谢谢!我很抱歉我的编码知识不符合标准,但感谢您的反馈。
data <- rnorm(10, 0, 1)

for(i in 1:length(data)){
  if(data[i] > 0) print("positive") else print("negative") 
}

clean_data <- function(input){
  
  ret <- NULL
  for(i in 1:length(input)){
    ifelse(input[i] > 0, ret[i] <- 1 , ret[i] <- 0) # note ifelse structure
  }
  
  return(ret)
}

clean_data(data)