basic

library("xxx")#加载包
install.packages(“xxx”)#安装包
edit(fun)#查看函数源码
library和require都可以载入包,但二者存在区别。
在一个函数中,如果一个包不存在,执行到library将会停止执行,require则会继续执行。
require将会根据包的存在与否返回true或者false
plot(x,y,col='red',xlab="X lab",ylab="y lab",'main'='picture',type='l')
type= 参数type= 控制输出图形(特别是线条)的类型:
type=”p” 只显示点(默认)
type=”l” 显示线条
type=”b” (同时)显示点和线
type=”o” 将点覆盖在线上
type=”h” 绘制从点到零轴(x 轴)的垂直线(高密度(high-density))
type=”s”
type=”S” 步阶图。第一种形式,垂直线顶部匹配数据点;第二种形式,底部匹配。
type=”n” 图形不显示。但是坐标轴仍然显示(默认),并且坐标依然以数据设定。这个非常适合随后用低级绘图函数画图。
barplot(1:5,col=RColorBrewer::brewer.pal(n = 5,name = "Set2"))#柱状图
rep(3,5)#[3,3,3,3,3]

每一次plot都会展开一副新的图。也就是说,如果你已经用过plot画了一部分图了,还想要继续往图上添加东西,就需要用points或者lines函数,不能重新用plot

par(mfrow=c(2,3))一张画布上有2x3张图

数据生成
d<- cbind(c(1,2,3),c(2,3,4))
x <- cbind(x1 = 3, x2 = c(4:1, 2:5));
x<-matrix(1:12,ncol=3)
x <- list(a = 1:10, b = rnorm(6,10,5), c = c(TRUE,FALSE,FALSE,TRUE))

which()#索引

.#分屏画图
attach(mtcars)#加载数据包
layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE))
hist(wt)
hist(mpg)
hist(disp)

edit(xxx)#查看函数源代码

mode(xxx)#查看变量类型
.#加载自己写的.R文件
source("D:/R/code/ttt.R")

.#函数ttts,参数n
ttts <- function(n){
sum <- 0
for (i in 1:n){
if (i == 3)
next
sum = sum + i
}
return(sum)
}

默认情况下,对于 list, environment 这两种对象,$可以提取(extract)出里面的元素,对于 S4 object,@ 可以提取出 slot。当然,对于自己定义的class,可以实现$ S3 Method,想做什么都可以。

.Call("C_snip", y, iterations, decreasing)#C_snip是dll里的函数,其余是参数

.#鼠标键盘事件
letter<-function()
{

画图函数,

draw<-function(label='',x=0,y=0)
{
plot(x,y,type='n')
text(x,y,label=label,cex=5)
}

keydown<-function(K)
{
if(K=="ctrl-C")
reutun(invisible(1))
else
{
print(K)
draw(K)
}

}
draw()
getGraphicsEvent(prompt = "Lettel Tool",onKeybd = keydown)#监听事件

}

apply函数是最常用的代替for循环的函数。apply函数可以对矩阵、数据框、数组(二维、多维),按行或列进行循环计算,对子元素进行迭代,并把子元素以参数传递的形式给自定义的FUN函数中,并以返回计算结果
apply(X,MARGIN,FUN,...)
参数列表:

X:数组、矩阵、数据框
MARGIN: 按行计算或按按列计算,1表示按行,2表示按列
FUN: 自定义的调用函数
…: 更多参数,可选

 x<-matrix(1:12,ncol=3)
apply(x,1,sum)

lapply函数是一个最基础循环操作函数之一,用来对list、data.frame数据集进行循环,并返回和X长度同样的list结构作为结果集,通过lapply的开头的第一个字母’l’就可以判断返回结果集的类型。

函数定义:

lapply(X, FUN, ...)

x <- list(a = 1:10, b = rnorm(6,10,5), c = c(TRUE,FALSE,FALSE,TRUE)
lapply(x,sum)

posted @ 2018-07-02 13:55  blog_hfg  阅读(167)  评论(0)    收藏  举报