在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
source("http://bioconductor.org/biocLite.R") library(Biobase) rm(list = ls()) #清空内存
R语言常用命令http://blog.sina.com.cn/s/blog_9f23a8da010195qx.html
> getwd() #获取工作目录。 > setwd("F:/R/myfun") #设定工作目录为F:/R/myfun。 > as.matrix(x) #把对象x转为矩阵型。 > as.numeric(x) #把对象x转为数值型。 > str(x) #查看对象x的结构。str是structure的缩写。 > rm(x) #移除对象x。 > rm(list=ls(all=TRUE)) #移除所有对象。
################################## #与向量有关的基本操作 ################################## > x = c(1,2,4) #生成元素依次为1,2,4的向量x,这里的c是concatenate的意思。注意其类型是数值,不是矩阵。 > x = c("a","b","cd") #生成元素依次为"a","b","cd"的字符向量x。 > x = paste("a","b","cd") #生成"a b cd"的字符x。 > x[a:b] #向量x的第a到b个元素。 > x[-i] #剔除向量x第i个元素所得的向量。 ################################## #与矩阵有关的基本操作 ################################## > M = matrix(0,c(m,n)) #生成m行n列的0矩阵。 > colnames(M) #矩阵M的列名。 > rownames(M) #矩阵M的行名。 > nrow(M) #矩阵M的行数。 > ncol(M) #矩阵M的列数。 > M[i,] #矩阵M第i行。(数值型) > M[i,,drop = FALSE] #矩阵M第i行。(矩阵型) > M = M[-i,] #删除矩阵M第i行。 > M[,j] #矩阵M第j列。 > M[i,j] #矩阵M第i行j列元素。 > t(M) #矩阵M的转置。若M为数值型向量,则t(M)为矩阵型行向量。 > X*Y #矩阵X与矩阵Y的Hadamard乘积。加、减、除、求余的规则和乘相同,即相同位置的元素进行运算。 > solve(M) #矩阵M求逆。 > solve(A,b) #求解线性方程Ax=b。 > apply(M, dimcode, f, fargs) #对矩阵M的行(dimcode=1)或列(dimcode=2)依次进行函数f操作,f的变量(arguments)方正fargs里。 ################################## #与列表有关的基本操作 ################################## > L = list(a = , b = , c = ,...) #建立列表L。 > L$a = NULL #去除列表L里的对象a。 > names(L) #列出列表L里的对象名。 > unname(L) #去掉列表L里的对象名。
################################## #与数据框有关的基本操作 ################################## #数据框是一种特殊的列表,所以对列表适用的函数往往对数据框也适用。此外,数据框也有矩阵型数据的特征,所以一些适用于矩阵型数据的函数,不如rbind,cbind,apply等也可以作用在数据框上。 > Data = data.frame(...) #创建数据框Data。 > fix(Data) #编辑数据框Data。 > head(Data) #显示数据框Data的前几行。 > attribute(Data) #列出数据框Data的组成部分。 > names(Data) #显示数据框Data的变量名。 > row.names(Data) #显示数据框Data的行名。 > Data$name1 #数据框Data中名为name1的变量。 > Data[i] #数据框Data中第i个变量形成的数据框。 > merge(D1,D2) #合并数据框D1和D2,需要D1和D2中有至少一个相同的变量。
################################## #与逻辑型数据有关的基本操作 ################################## > is.data.frame(x) #判断是否对象x是数据框。类似命令有is.ts(x),is.numeric(x)等。 > all(x>a) #判断是否对象x的每个元素都大于a。 > any(x>a) #判断对象x的元素中是否存在一个大于a。 > x>y #判断x的每个元素是否大于y的每个元素。 > x[x>a] #向量x中大于a的元素组成的新向量。 > subset(x, x>a) #向量x中大于a的元素组成的新向量。与上面例子的区别在于若向量元素里有NA,上面的例子会保留在结果中,而subset命令会剔除掉。 > which(x, x>a) #返回向量中大于a的元素的位置。 > x = ifelse(b, u, v) #生成一个与b(逻辑向量)维度相同的数值向量,若b[i]为TRUE,则x[i]为u,反之为v。 |
请发表评论