首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >生成函数

生成函数
EN

Stack Overflow用户
提问于 2013-10-25 16:12:14
回答 4查看 173关注 0票数 6

我是R的新手,想知道函数是如何创建的。

如果我有,请告诉我:

代码语言:javascript
复制
> colourName
 [1] "red" "green" "blue" "yellow" "white" "black"

 #Which the following colours equal something like this:
 #red = 1
 #green = 2
 #blue = 3 
 #yellow = 4
 #white = 5
 #black = 6

如何创建一个名为myColour()的函数,其中结果以数值向量的形式返回?

因此,如果我键入以下内容,我应该会得到:

代码语言:javascript
复制
> myColour("yellow")
[1] 4    

请帮帮我..

我的代码(但它是错误的!)

代码语言:javascript
复制
colourName<-c("red", "green", "blue", "yellow", "white", "black")
data <- c(1,2,3,4,5,6)

myFunction <- function(colour){
colourName = data
return(colour)
}
myFunction("red")

有没有可能把它创建成一个函数?

EN

Stack Overflow用户

发布于 2013-10-25 17:45:06

下面是你的代码出错的原因,以及它的作用:

代码语言:javascript
复制
colourName<-c("red", "green", "blue", "yellow", "white", "black")
data <- c(1,2,3,4,5,6)

将两个变量设置为具有这些值的向量。

代码语言:javascript
复制
myFunction <- function(colour){

这将开始定义一个带有一个参数colour的新函数。

代码语言:javascript
复制
colourName = data

这将创建另一个名为colourName的新变量(单号=与<-号相同),并将其值设为data。此colourName变量仅在函数内部可见。现在你在函数中有一个colourName变量,它的值是c(1,2,3,4,5,6),因为它是来自函数外部的data的副本。

代码语言:javascript
复制
return(colour)
}

这将返回colour的值作为函数的结果。由于这与myFunction <- function(colour){中的参数相同,并且您没有更改colour变量,因此您将只得到您输入的内容!

代码语言:javascript
复制
myFunction("red")

这将调用该函数,将参数colour的值设置为"red"。现在浏览一下函数代码,您应该会看到它将打印[1] "red" -一个与输入相同的向量。

我知道这并没有完全回答你如何获得你想要的颜色的数字的问题,但你显然没有理解很多编程的基础知识,所以我希望这能有所帮助。

票数 5
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19584517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档