- Basic
- u<-matrix(c(1,2,3,1,2,4),nrow=3)
- v<-matrix(c(8,12,20,15,10,2),nrow=3)
- for (m in c("u","v")) {
- z<-get(m)
- print(lm(z[,2]~z[,1]))
- }
- y<-if(x==2) x else x+1
- x%/%y # integer divide
- x%%y # mod
- x&y # vector and
- x|y # vector or
- |x # not
- oddcount<-function(x) {
- k<-0
- k # as return val
- }
- g<-function() {
- t<-function(x) return(x^2)
- return(t)
- }
- ls() # show current environment variable
- x<-c(13,5,12)
- sort(x) # 5 12 13
- x # not changed x
- 13 5 12
- x<-sort(x) # 5 12 13
- oddsevens<-function(v) {
- odds<-which(v%%2==1)
- evens<-which(v%%2==1)
- list(o=odds,e=evens) # return multiple values
- }
- # global variable
- f<-function() {
- x<<-...
- y<<-...
- }
- x<-...
- y<-...
- f() # x,y are changed in f
- ...<-x
- ...<-y # use new x,y
- # clojure
- counter<-function() {
- ctr<-0
- f<-function() {
- ctr<<-ctr+1
- cat("sentence",ctr,"\n")
- }
- return(f)
- }
- c1<-counter()
- c2<-counter()
- c1() # ctr=1
- c1() # ctr=2
- c2() # ctr=1
- c2() # ctr=2
- # recursion
- quicksort<-function(x) {
- if (length(x)<=1) return(x) # end condition
- pivot<-x[1]
- therest<-x[-1]
- sv1<-therest[therest<pivot]
- sv2<-therest[therest>=pivot]
- sv1<-quicksort(sv1)
- sv2<-quicksort(sv2)
- return(c(sv1,pivot,sv2))
- }
- "%a2b%"<-function(a,b) return(a+2*b) # custom operator
- 3 %a2b% 5
- y<-apply(z,1,function(x) x/c(2,8)) # anonymous function
R语言学习笔记7-程序结构篇
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- R 是一种块状结构的语言,R 语言的块(block) 由大括号划分,不过当块只包含一条语句时大括号可以省略。程序语...
- 跟慧相见,是因为鹏的突然离世。 慧和鹏我们都是老同学。 在学校时他们关系就好,工作以后两家对两个娃还都满意,就确立...