环境和函数
1.环境
使用new.env函数创建环境
> an_environment <- new.env()
向环境中分配变量与列表相同
> an_environment[["pythag"]] <- c(12,15,20,21)> an_environment$root <- polyroot(c(6,-5,1))
> assign("moonday",weekdays(as.Date("1969/07/20")),an_environment)
检索变量
> an_environment$root[1] 2+0i 3-0i
> get("moonday",an_environment)
[1] "星期日"
可以把环境参数传给ls和ls.str函数中,列出其中的内容
> ls(an_environment)[1] "moonday" "pythag" "root"
> ls.str(an_environment)
moonday : chr "星期日"
pythag : num [1:4] 12 15 20 21
root : cplx [1:2] 2+0i 3-0i
使用as.list和as.environment函数可以完成环境和列表的转换
> (a_list <- as.list(an_environment))$pythag
[1] 12 15 20 21
$moonday
[1] "星期日"
$root
[1] 2+0i 3-0i
> as.environment(a_list)
<environment: 0x0000000005ed8d50>
2.函数
函数的创建和调用
> a_function <- function(x,y)+ {
+ sqrt(x^2+y^2)
+ }
> a_function(2,4)
[1] 4.472136
向其它函数传递和接收函数do.call函数
> do.call(a_function,list(x=2,y=1))[1] 2.236068
R语言学习(4)-环境和函数
时间: 2024-10-14 11:54:42