首页 3.1.R语言基本操作函数(1)变量的基本操作

3.1.R语言基本操作函数(1)变量的基本操作

举报
开通vip

3.1.R语言基本操作函数(1)变量的基本操作 R语言学习笔记 赵明扬(Email:zmyedu@163.com) 1.变量变换 as.array(x),as.data.frame(x),as.numeric(x),as.logical(x),as.complex(x),as.character(x),...转换变量类型;使用如下命令可得到全部列表,methods(as) factor():将一个向量转化为一个因子 ...

3.1.R语言基本操作函数(1)变量的基本操作
R语言学习笔记 赵明扬(Email:zmyedu@163.com) 1.变量变换 as.array(x),as.data.frame(x),as.numeric(x),as.logical(x),as.complex(x),as.character(x),...转换变量类型;使用如下命令可得到全部列表,methods(as) factor():将一个向量转化为一个因子 2.变量信息 is.na(x),is.null(x),is.array(x),is.data.frame(x),is.numeric(x),is.complex(x),is.character (x),...检验变量的类型;使用如下命令得到全部列表,methods(is) length(x):x中元素的个数 dim(x):查看变量的维数;重新设置的维数,例如dim(x)=c(3,2) dimnames(x):重新设置对象的名称 nrow(x):行的个数 ncol(x):列的个数 class(x):得到或设置x的类;class(x)<-c(3,2) unclass(x):删除x的类 attr(x,which):得到或设置x的属性which attributes(obj):得到或设置obj的属性列表 fix,edit:对数据框数据进行表格形式的编辑 3.数据选取和操作 which.max(x):返回x中最大元素的指标 which.min(x):返回x中最小元素的指标 rev(x):翻转x中所有的元素 sort(x):升序排列x中的元素;降序排列使用:rev(sort(x)) cut(x,breaks):将x分割成为几段(或因子);breaks为段数或分割点向量 match(x,y):返回一个和x长度相同且和y中元素相等的向量不等则返回NA which(x==a):如果比较操作为真(TRUE),返回向量x的指针 choose(n,k):组合数的计算 na.omit(x):去除缺失值(NA)(去除相关行如果x为矩阵或数据框) na.fail(x):返回错误信息,如果x包含至少一个NA unique(x):如果x为向量或数据框,返回唯一值 table(x):返回一个由x不同值个数组成的表格(通常用于整数或因子),即频数表 subset(x,...):根据条件(...选取x中元素,如x$V1<10);如果x为数据框,选项select使用负号给出保留 或去除的变量 subset(x, subset, select, drop = FALSE, ...) sample(x,size):不放回的随即在向量x中抽取size个元素,选项replace=TRUE允许放回抽取 prop.table(x,margin=):根据margin使用分数表示表格,wumargin时,所有元素和为1 * R数据的创建与索引 ** 向量的操作 *** 向量的创建 **** c(...) 为concatenate的缩写; 常见的将一系列参数转化为向量的函数,通过recursive=TRUE降序排列列表并组合所有的元素为向量 *** from:to产生一个序列 ":"有较高的优先级;1:4+1得到"2,3,4,5" *** seq() 产生一个向量序列 seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)),length.out = NULL, along.with = NULL, ...) 其中length.out可简写为len。 *** rep() 重复一个对象 rep(x,times):x是要重复的对象(例如向量c(1,2,3)),times为对象中每个元素重复的次数(如times=c(9,7,3)就是将x向量的1重复9次,2重复7次,3重复3次)。 除了上述主要的用法之外,还有一种特殊的用法:rep(x,times)重复x times次;使用each=来重复x元素each次;rep(c(1,2,3),2)得到1 2 3 1 2 3;rep(c(1,2,3),each=2)得到1 1 2 2 3 3。 *** 利用向量的索引实现定义分段函数 利用改变部分元素值的技术与逻辑值下标结合,可以定义向量的分段函数,例如,要定义 可以用如下的语句去实现: > x = c(-2.3,4,-5,7); > y = numeric(length(x)); > y[x<0] = 1 - x[x<0]; > y[x>0] = 1 - x[x>0]; > y [1] 3.3 -3.0 6.0 -6.0 4.1.数组(包含矩阵、向量)创建 c(...) 常见的将一系列参数转化为向量的函数,通过recursive=TRUE降序排列列表并组合所有的元素为向量 from:to产生一个序列 ":"有较高的优先级;1:4+1得到"2,3,4,5" seq() 产生一个向量序列 seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)),length.out = NULL, along.with = NULL, ...) 其中length.out可简写为len。 rep() 重复一个对象 rep(x,times):x是要重复的对象(例如向量c(1,2,3)),times为对象中每个元素重复的次数(如times=c(9,7,3)就是将x向量的1重复9次,2重复7次,3重复3次)。 除了上述主要的用法之外,还有一种特殊的用法:rep(x,times)重复x times次;使用each=来重复x元素each次;rep(c(1,2,3),2)得到1 2 3 1 2 3;rep(c(1,2,3),each=2)得到1 1 2 2 3 3。 matrix(...) 创立矩阵 matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL) array(x,dim=...) 产生由x组成的数组;使用类似dim=c(3,4,2)指定维数;如果x长度不够,则x自动循环 data.frame(...) 创建数据框,变量可能被命名或未被命名 data.frame(v=1:4,ch=c("a","b","c","d"),n=10); 相对短的向量会被填充到最大向量长度。 注意数据框中各个属性的元素个数必须相同 list(...) 创建一个由变量组成的列表,变量可能被命名; list(a=c(1,2),b="hi",c=3i) factor(x,levels=) 把向量x编码称为因子 factor(x = character(), levels, labels = levels,exclude = NA, ordered = is.ordered(x)) gl() 产生因子变量 gl(n,k,lenth=n*k,labels=) 通过指定水平方式产生水平因子;k为水平的个数,n为重复的次数 rbind() cbind() rbind(...)以行的形式组合矩阵,数据框,或其它 cbind(...)以列的方式组合,其他同rbind() 数据切割和分离 向量指标 x[n]:第n个元素 x[-n]:除了第n个元素的x x[1:n]:前n个元素 x[-(1:n)]:第n+1至最后的元素 x[c(1,4,2)]:指定元素 x["name"]:名为"name"的元素 x[x>3]:所有大于3的元素 x[x>3 & x<5]:区间(3,5)的元素 x[x%in%c("a","and","the")]:给定组中的元素 列表指标 x[n]:列表显示元素n x[[n]]:列表的第n个元素 x[["name"]]:名为"name"的元素 x$name :同上 矩阵指标 x[i,j]:下表为(i,j)的元素 x[i,]:第i行 x[,j]:第j列 x[,c(1,3)]:第1和3列 x["name",]:名为"name"的行 x$name :同上 数据框指标 x[["name"]]:列明为"name"的列 x$name :同上 4.2.R数学函数 4.2.1.泛用函数apply: 描述:让不同的函数作用数组array不同的边。 用法:apply(X, MARGIN, FUN, ...) 参数描述: X为一数组array,当然包括矩阵。 MARGIN:为一向量,它指定函数要作用的下标。例如对一个矩阵来说,1代表行,2代表列,而c(1,2)代表行和列。 FUN作用于数组array上的函数。此函数可以是自己编写的。 注意: 当X时一个data.frame时,而不是array时,函数apply就会强制性的通过as.matrix或as.array将其转化为maxtrix或array。 例子: ## Compute row and column sums for a matrix: x <- cbind(x1 = 3, x2 = c(4:1, 2:5)) col.sums <- apply(x, 2, sum) row.sums <- apply(x, 1, sum) 4.2.2.基本符号: + :加 - :减 * :乘 / :除 ^ :幂 4.2.3.三角函数与其他基本数学函数 sin, cos, tan, asin, atan, atan2, log, log10, exp, max(x): 当x为一向量时,返回x中最大的元素。 当x为矩阵时,返回矩阵中所有元素的最大值。当要返回矩阵x每行或每列的最大值时,可以使用apply函数(apply(X, MARGIN, FUN, ...)),其中MARGIN表示要作用的方式,1代表行,2代表列,c(1,2)代表行和列;例如apply(data,MARGIN=1,max) 当x为data.frame时,1仍然代表行,2仍然代表列。 当x为数组array时,1仍然代表行,2仍然代表列,其它更高维数用相应的编号数字来表示,如3就可以代表array的页。 其它详细情况参考apply函数 min(x):返回x中最小的元素,同max rev(x) 翻转x中的所有元素 sort(x) 升序排列x中的元素;降序排列使用rev(sort(x)),要得到排列的小标用order() choose(n,k) 组合数计算 which() 返回满足条件的下表 sample(x,size) 不放回的随机在向量x中抽取size个元素选项,replace+TRUE允许放回抽样 rank():计算向量的秩 range(x):返回c(min(x),max(x)) sum(x):x中各元素的加和 diff(x):向量x的差分 prod(x):x中元素的连乘积 mean(x):x的均值 median(x):x的中位数 quantile(x,probs=):满足给定概率的样本分位数(默认为0,0.25,0.75,1) weight.mean(x,w):加权平均,w即为weight,即权值。 rank(x):x中元素的秩 var(x):向量x的样本方差;如果x是矩阵或数据框,协方差矩阵将被计算 cor(x):如果x是矩阵或数据框,相关系数矩阵将被计算 sd(x):x的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 差;sd(x)=sqrt(var(x)) var(x,y) or cov(x,y):x和y间的协方差;如果x,y为矩阵或数据框,返回x和y各列的协方差 cor(x,y):x和y的线性相关系数;或者相关矩阵,如果x和y为矩阵或者数据框 round(x,n):x的约数,精确到n位 log(x,base):计算x以base为基的对数,默认基为exp(1) scale(x):如果x是一个矩阵,则中心化和标准化数据;若只标准化数据,则使用选项center=FALSE,若只 中心化使用scale=FALSE(默认center=TRUE, scale=TRUE) pmin(x,y,...):x[i],y[i]相比较小者,组成新的向量 pmax(x,y,...):x[i],y[i]相比较大者,组成新的向量 Re(x):复数的实部 Im(x):复数的虚部 abs(x):绝对值 Arg(x):复数角度(in radians) Conj(x):共轭复数 fft(x):数组x的快速傅里叶变换 mvfft(x):矩阵x的每一列的傅里叶变换 factorial():计算n! cumsum():cumulative sums cumprod():cumulative products D(expression(exp(x^2)),"x") :求导 integrate(function(x) x^2,0,1):积分 注意:大多数数学函数使用逻辑参数na.rm=FALSE来指定是否移除缺失值(NA) 4.3.R字符操作 paste(...):转化为字符后连接向量;seq=为分割界限(一个空格为默认);选择collapse=可以分 割"collapse"结果 substr(x,start,stop):提取字符向量的子字段;同样可以赋值,使用substr(x,start,stop)<-value strsplit(x,split):在split的位置分割x,例如: x<-strsplit("An R matrix corresponds to the mathematical concept"," "); length(x[[1]]); #注意:对象被存放在列表x的第一项中,可以用x[[1]]提取 grep(pattern,x):搜索x中满足pattern条件;参见?regex gsub(pattern,replacement,x):替换满足正则表达式的字段,sub()类似,但只替换第一个出现的字段 tolower(x):转化为lowercase toupper(x):转化为uppercase match(x,table):table中匹配x元素位置组成的向量 x%in%table:table中匹配x元素位置组成的向量,返回值为逻辑值 pmatch(x,table):table中部分匹配x元素 nchar(x):字符的个数 12 _191851720.unknown
本文档为【3.1.R语言基本操作函数(1)变量的基本操作】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_668482
暂无简介~
格式:doc
大小:40KB
软件:Word
页数:8
分类:初中语文
上传时间:2017-06-05
浏览量:27