R语言编程基础篇(2)
7. 在函数中修改全局变量的值
X <- 0
Fun <- function()
{
X<<-5
}
Fun()
X
[1]5
当然,尽量不要这样做,会让程序变得难以维护。
8. 计算向量的值(长度)
sqrt(sum(x*x))
或者
sqrt(sum(x^2))
9. 查C语言函数的源代码
比如对于length函数,会显示下列信息:
.Primitive("length")
.Primitive 与.Internal的函数通常都是 C语言写成的,所以在R的开发环境中中是无法显示的。到网上下载R的源代码,然后在 src/main/*.c (通常位于这个位置)下查找。
10. 将数据框转换为矩阵
用as.matrix, 如果数据类型都相符,比如:
> t
t1 t2
1 1 2
2 15 33
> aMat<-as.matrix(t)
> aMat
t1 t2
[1,] 1 2
[2,] 15 33
> class(aMat)
[1] "matrix"
11. 求卷积
计算卷积的函数,convolve(),具体使用查看帮助即可。
12. 将向量中符合条件的元素都删掉
c<-c(1,1,2,2,3,4,1)
要删除所有的1
c<-c[!c==1]
即可
13. 在图中读出某个点的坐标
plot(0)
locator()
$x
[1]0.9251036 0.8943020 0.8861963
$y
[1]-0.01747573 -0.15862584 -0.44764750
运行以上代码,可以用鼠标在图中点击,然后按Esc键退出,即可返回坐标值。
14. 一张图里画出多种曲线
#The R Book,page-165
library(MASS)
attach(faithful)
x=faithful$eruptions
hist(x,15,freq=FALSE,col=27)
lines(density(x,width=0.6,n=200))
m<-mean(x)
s<-sd(x)
curve(dnorm(x,m,s),col='red',add=TRUE)
15. 不带常数项的回归
在后面加一个-1,不加-1为默认的带常数项的回归。例如:
lm(Mileage ~ Weight - 1, data = fuel.frame)
建议看formula的资料
0+vars
vars-1
等等表示都是可以的。
数据分析咨询请扫描二维码