r语句常用函数汇总(1)

合集下载

R语言常用的数据操作函数整理

R语言常用的数据操作函数整理

R语言常用的数据操作函数整理R语言是一种用于数据分析和统计建模的编程语言,它提供了许多强大且便捷的数据操作函数。

本文将整理R语言常用的数据操作函数,以帮助读者更好地进行数据处理。

1.载入数据在R语言中,可以使用`read.csv(`函数来从CSV文件中读取数据,`read.table(`函数可以读取其他格式的数据,如文本文件。

另外,还可以使用`read.xlsx(`函数读取Excel文件,通过`readRDS(`函数读取R数据集。

以下是一些常用的数据载入函数:- `read.csv(file, header=TRUE)`:从CSV文件中读取数据。

- `read.table(file, header=TRUE)`:从文本文件中读取数据。

- `read.xlsx(file)`:从Excel文件中读取数据。

2.数据查看在进行数据操作前,我们常常需要先了解数据的结构和内容。

以下是一些常用的数据查看函数:- `head(data, n=6)`:显示数据的前n行,默认为6行。

- `tail(data, n=6)`:显示数据的后n行,默认为6行。

- `str(data)`:显示数据的结构和类型。

- `summary(data)`:提供数据的描述性统计信息。

3.数据选择在R语言中,可以使用不同的方式选择数据的子集。

以下是一些常用的数据选择函数:- `[rows, cols]`:通过行索引和列索引选择数据。

- `$column_name`:通过列名选择数据。

- `subset(data, condition)`:根据条件选择数据子集。

4.数据过滤对于大型数据集,我们常常需要根据一些条件过滤数据。

以下是一些常用的数据过滤函数:- `filter(data, condition)`:根据条件筛选出符合条件的数据。

- `slice(data, indices)`:通过索引选择数据。

- `arrange(data, column)`:按照指定列对数据进行排序。

R语言常用函数汇总

R语言常用函数汇总

R语言常用函数汇总R语言是一种强大的统计计算语言,拥有丰富的函数和包。

下面是常用的R语言函数的汇总(按照字母顺序排列)。

1. abs(x): 返回x的绝对值。

2. append(x, values): 向向量x中追加值values。

3. apply(X, MARGIN, FUN): 在矩阵X的指定维度上应用函数FUN。

4. args(function): 返回指定函数的参数列表。

5. as.character(x): 将对象x转化为字符型。

6. as.data.frame(x): 将对象x转化为数据框。

7. as.factor(x): 将对象x转化为因子型。

8. as.matrix(x): 将对象x转化为矩阵。

9. as.numeric(x): 将对象x转化为数值型。

10. barplot(height): 绘制条形图。

11.c(x,...):将x与其他对象合并为一个向量。

12. colnames(x): 返回矩阵或数据框x的列名。

13. cor(x, y): 计算x和y的相关系数。

14. cut(x, breaks): 将向量x划分为几个离散区间。

15. plot(x, y): 绘制散点图。

16. density(x): 生成x的密度图。

17. diff(x): 计算向量x的差值。

18. dim(x): 返回矩阵或数据框x的维度。

19. mean(x): 计算向量x的平均值。

20. median(x): 计算向量x的中位数。

21. min(x): 返回向量x的最小值。

22. max(x): 返回向量x的最大值。

23. names(x): 返回对象x的变量名。

24. paste(x, ...): 将x和其他对象合并为一个字符型。

25. print(x): 打印对象x。

26. range(x): 返回向量x的范围。

27. read.csv(file): 从CSV文件中读取数据。

28. rownames(x): 返回矩阵或数据框x的行名。

R语言常用函数

R语言常用函数

R语言常用函数基本一、数据管理vector:向量numeric:数值型向量logical:逻辑型向量character;字符型向量list:列表data.frame:数据框c:连接为向量或列表length:求长度subset:求子集seq,from:to,sequence:等差序列rep:重复NA:缺失值NULL:空对象sort,order,unique,rev:排序unlist:展平列表attr,attributes:对象属性mode,typeof:对象存储模式与类型names:对象的名字属性二、字符串处理character:字符型向量nchar:字符数substr:取子串format,formatC:把对象用格式转换为字符串paste,strsplit:连接或拆分charmatch,pmatch:字符串匹配grep,sub,gsub:模式匹配与替换三、复数complex,Re,Im,Mod,Arg,Conj:复数函数四、因子factor:因子codes:因子的编码levels:因子的各水平的名字nlevels:因子的水平个数cut:把数值型对象分区间转换为因子table:交叉频数表split:按因子分组aggregate:计算各数据子集的概括统计量tapply:对“不规则”数组应用函数数学一、计算+, -, *, /, ^, %%, %/%:四则运算ceiling,floor,round,signif,trunc,zapsmall:舍入max,min,pmax,pmin:最大最小值range:最大值和最小值sum,prod:向量元素和,积cumsum,cumprod,cummax,cummin:累加、累乘sort:排序approx 和approx fun:插值diff:差分sign:符号函数二、数学函数abs,sqrt:绝对值,平方根log, exp, log10, log2:对数与指数函数sin,cos,tan,asin,acos,atan,atan2:三角函数sinh,cosh,tanh,asinh,acosh,atanh:双曲函数beta,lbeta,gamma,lgamma,digamma,trigamma,tetragamma,pentagamma,choose ,lchoose:与贝塔函数、伽玛函数、组合数有关的特殊函数fft,mvfft,convolve:富利叶变换及卷积polyroot:多项式求根poly:正交多项式spline,splinefun:样条差值besselI,besselK,besselJ,besselY,gammaCody:Bessel函数deriv:简单表达式的符号微分或算法微分三、数组array:建立数组matrix:生成矩阵data.matrix:把数据框转换为数值型矩阵lower.tri:矩阵的下三角部分mat.or.vec:生成矩阵或向量t:矩阵转置cbind:把列合并为矩阵rbind:把行合并为矩阵diag:矩阵对角元素向量或生成对角矩阵aperm:数组转置nrow, ncol:计算数组的行数和列数dim:对象的维向量dimnames:对象的维名row/colnames:行名或列名%*%:矩阵乘法crossprod:矩阵交叉乘积(内积)outer:数组外积kronecker:数组的Kronecker积apply:对数组的某些维应用函数tapply:对“不规则”数组应用函数sweep:计算数组的概括统计量aggregate:计算数据子集的概括统计量scale:矩阵标准化matplot:对矩阵各列绘图cor:相关阵或协差阵Contrast:对照矩阵row:矩阵的行下标集col:求列下标集四、线性代数solve:解线性方程组或求逆eigen:矩阵的特征值分解svd:矩阵的奇异值分解backsolve:解上三角或下三角方程组chol:Choleski分解qr:矩阵的QR分解chol2inv:由Choleski 分解求逆五、逻辑运算,=,==,!=:比较运算符!,&,&&,|,||,xor():逻辑运算符logical:生成逻辑向量all,any:逻辑向量都为真或存在真ifelse():二者择一match,%in%:查找unique:找出互不相同的元素which:找到真值下标集合duplicated:找到重复元素六、优化及求根optimize,uniroot,polyroot:一维优化与求根程序设计一、控制结构if,else,ifelse,switch:分支for,while,repeat,break,next:循环apply,lapply,sapply,tapply,sweep:替代循环的函数。

r语言数学函数

r语言数学函数

r语言数学函数标题:深入了解r语言中的数学函数作为一位r语言的使用者,熟悉并灵活应用各种数学函数是必要的。

在本文中,我们将深入了解r语言中的数学函数,并提供一些常见的实例供大家参考。

一、 r语言中的基本数学函数1. 加、减、乘、除在r语言中,加法使用“+”符号,减法使用“-”符号,乘法使用“*”符号,除法使用“/”符号。

例如:a <- 5 + 2 # 加b <- 5 - 2 # 减c <- 5 * 2 # 乘d <- 5 / 2 # 除print(a) # 输出结果为7print(b) # 输出结果为3print(c) # 输出结果为10print(d) # 输出结果为2.52. 幂运算在r语言中,幂运算使用“^”符号。

例如:e <- 2^3 # 2的3次幂print(e) # 输出结果为83. 取模运算在r语言中,取模运算使用“%%”符号。

例如:f <- 5 %% 2 # 取5除以2的余数,结果为1print(f) # 输出结果为14. 取整和四舍五入在r语言中,取整使用函数floor()或ceiling(),四舍五入使用函数round()。

例如:g <- floor(2.7) # 取整,结果为2h <- ceiling(2.3) # 取整,结果为3i <- round(2.5) # 四舍五入,结果为3print(g) # 输出结果为2print(h) # 输出结果为3print(i) # 输出结果为35. 绝对值和取余数在r语言中,绝对值使用函数abs(),取余数使用函数abs()。

例如:j <- abs(-3) # 取绝对值,结果为3k <- sign(-5) # 取符号,结果为-1print(j) # 输出结果为3print(k) # 输出结果为-1二、 r语言中的高级数学函数1. 寻找最小值和最大值在r语言中,可以使用函数min()和max()来寻找向量或数据框中的最小值和最大值。

r语言基本函数

r语言基本函数

r语言基本函数作为一种数据分析和统计学的软件, R 语言已经成为了数据分析领域中不可或缺的一部分。

R 语言拥有丰富的函数库,这是其实现数据分析和建模的基础。

本文将介绍R 语言中的基本函数,从而为读者提供使用 R 进行统计分析的基础知识和指导。

R 语言的基本函数主要分为三大类:数据操作函数、数据处理函数和统计函数。

在使用这些函数之前,我们需要先安装 R 语言软件并导入所需的数据集。

一、数据操作函数数据操作函数主要用于对数据的读取、转化、合并等操作。

下面是一些常见的数据操作函数:1. read.table():用于从文件中读取表格数据并生成数据框。

2. cbind() 和 rbind():分别用于对数据框进行列合并和行合并。

3. subset():用于选取数据框的子集。

4. merge():用于根据一个或多个变量来合并两个数据框。

5. aggregate():用于对数据框中的某一列进行分组并进行统计分析。

6. transform():用于根据已有的变量生成新的变量。

7. arrange():根据指定的变量对数据框进行排序。

以上是数据操作函数的部分应用,这些函数的使用有助于我们对数据进行更好的处理和操作。

二、数据处理函数数据处理函数主要用于对数据进行清洗、规整、筛选、统计等操作。

下面是一些常见的数据处理函数:1. summary():用于生成数据框的统计概要。

2. na.omit():用于删除数据框中具有缺失值的行或列。

3. na.fill():用于使用指定的值或方法填充数据框中的缺失值。

4. scale():用于对数据框中的变量进行标准化。

5. cor():用于计算数据框中各变量之间的相关性。

6. subset():用于筛选数据框中满足条件的行或列。

以上是数据处理函数的一些应用,这些函数可以使我们更好、更快、更精准地对数据进行处理。

三、统计函数统计函数主要用于数据的描述和探索性分析,可以帮助我们快速地了解数据的分布、变量之间的关系等。

R语言常用函数

R语言常用函数

R语言常用函数This model paper was revised by the Standardization Office on December 10, 2020R语言常用函数基本一、数据管理vector:向量 numeric:数值型向量 logical:逻辑型向量character;字符型向量list:列表:数据框c:连接为向量或列表 length:求长度 subset:求子集seq,from:to,sequence:等差序列rep:重复 NA:缺失值 NULL:空对象sort,order,unique,rev:排序unlist:展平列表attr,attributes:对象属性 mode,typeof:对象存储模式与类型names:对象的名字属性二、字符串处理character:字符型向量 nchar:字符数 substr:取子串format,formatC:把对象用格式转换为字符串paste,strsplit:连接或拆分charmatch,pmatch:字符串匹配grep,sub,gsub:模式匹配与替换三、复数complex,Re,Im,Mod,Arg,Conj:复数函数四、因子factor:因子 codes:因子的编码 levels:因子的各水平的名字nlevels:因子的水平个数 cut:把数值型对象分区间转换为因子table:交叉频数表 split:按因子分组aggregate:计算各数据子集的概括统计量tapply:对“不规则”数组应用函数数学一、计算+, -, *, /, ^, %%, %/%:四则运算ceiling,floor,round,signif,trunc,zapsmall:舍入max,min,pmax,pmin:最大最小值 range:最大值和最小值sum,prod:向量元素和,积cumsum,cumprod,cummax,cummin:累加、累乘sort:排序approx和approx fun:插值diff:差分sign:符号函数二、数学函数abs,sqrt:绝对值,平方根log, exp, log10, log2:对数与指数函数sin,cos,tan,asin,acos,atan,atan2:三角函数sinh,cosh,tanh,asinh,acosh,atanh:双曲函数beta,lbeta,gamma,lgamma,digamma,trigamma,tetragamma,pentagamma,choose ,lchoose:与贝塔函数、伽玛函数、组合数有关的特殊函数fft,mvfft,convolve:富利叶变换及卷积polyroot:多项式求根poly:正交多项式spline,splinefun:样条差值 besselI,besselK,besselJ,besselY,gammaCody:Bessel函数deriv:简单表达式的符号微分或算法微分三、数组array:建立数组 matrix:生成矩阵:把数据框转换为数值型矩阵:矩阵的下三角部分:生成矩阵或向量t:矩阵转置 cbind:把列合并为矩阵 rbind:把行合并为矩阵diag:矩阵对角元素向量或生成对角矩阵aperm:数组转置 nrow, ncol:计算数组的行数和列数dim:对象的维向量 dimnames:对象的维名row/colnames:行名或列名 %*%:矩阵乘法crossprod:矩阵交叉乘积(内积) outer:数组外积kronecker:数组的Kronecker积 apply:对数组的某些维应用函数tapply:对“不规则”数组应用函数sweep:计算数组的概括统计量aggregate:计算数据子集的概括统计量 scale:矩阵标准化matplot:对矩阵各列绘图 cor:相关阵或协差阵Contrast:对照矩阵 row:矩阵的行下标集col:求列下标集四、线性代数solve:解线性方程组或求逆 eigen:矩阵的特征值分解svd:矩阵的奇异值分解backsolve:解上三角或下三角方程组chol:Choleski分解 qr:矩阵的QR分解chol2inv:由Choleski分解求逆五、逻辑运算,=,==,!=:比较运算符!,&,&&,|,||,xor():逻辑运算符logical:生成逻辑向量 all,any:逻辑向量都为真或存在真ifelse():二者择一 match,%in%:查找unique:找出互不相同的元素 which:找到真值下标集合duplicated:找到重复元素六、优化及求根optimize,uniroot,polyroot:一维优化与求根程序设计一、控制结构if,else,ifelse,switch:分支for,while,repeat,break,next:循环apply,lapply,sapply,tapply,sweep:替代循环的函数。

R语言常用函数汇总精编版

R语言常用函数汇总精编版

R语言常用函数汇总精编版R语言是一种广泛使用的开源编程语言和环境,用于统计计算和图形化表示。

R语言具有丰富的函数库,大大减少了编写相同功能代码的工作量,极大地提高了编程效率。

这里将介绍一些R语言常用函数的用法和示例,并对其功能进行分类和汇总。

1.数据处理函数:- `head(`:查看数据框的前几行。

- `tail(`:查看数据框的后几行。

- `dim(`:查看数据框的行数和列数。

- `nrow(`:查看数据框的行数。

- `ncol(`:查看数据框的列数。

- `str(`:查看数据框的结构。

- `summary(`:查看数据框的统计概要。

- `table(`:计算数据框中各个变量的频数或交叉频数。

- `sort(`:对数据框的列进行排序。

2.数据筛选函数:- `subset(`:根据条件筛选数据。

- `which(`:返回满足条件的元素位置。

- `grep(`:根据模式匹配筛选数据。

- `grepl(`:返回包含模式匹配的逻辑向量。

- `unique(`:去除重复的元素。

- `%in%`:判断元素是否在给定的向量中。

3.数据变换函数:- `transform(`:根据一定的规则对数据进行变换。

- `aggregate(`:按照指定的条件对数据进行分组聚合。

- `merge(`:按照指定的键将两个数据框合并。

- `reshape(`:对数据进行重塑操作。

- `cast(`:对数据进行透视操作。

4.统计计算函数:- `mean(`:计算向量的平均值。

- `median(`:计算向量的中位数。

- `sum(`:计算向量的和。

- `sd(`:计算向量的标准差。

- `var(`:计算向量的方差。

- `quantile(`:计算向量的分位数。

5.绘图函数:- `plot(`:绘制散点图。

- `hist(`:绘制直方图。

- `boxplot(`:绘制箱线图。

- `barplot(`:绘制柱状图。

- `pie(`:绘制饼图。

R语言常用函数总结_光环大数据培训机构

R语言常用函数总结_光环大数据培训机构

R语言常用函数总结_光环大数据培训机构字符数据的处理是一大难题,它不像数值进行加减乘除等等计算,字符往往称为非结构化的数据对于它的处理,我需要具备正则表达式的知识可以学习这篇文章正则表达式,然后再加上下面介绍的几个函数就可以处理绝大部分的字符数据.今天介绍一个强大的字符处理包stringr.这个包要先安装并加载.按照功能可以把字符处理分为 1. 查询 2. 提取 3. 替代 4. 分割 5. 粘合 6. 排序 7. 填充,排版,大小写转换1.查询library(stringr)x<-c("study ","Rprogaming","good","中国 ","2016","加油2017")y<-c("good","good","study")1.查询并返回逻辑值grepl("goo",x)## [1] FALSE FALSE TRUE FALSE FALSE FALSEgrepl("goo$",x)## [1] FALSE FALSE FALSE FALSE FALSE FALSEgrepl("//d",x)## [1] FALSE FALSE FALSE FALSE TRUE TRUEstr_detect(x,"goo") #查询包含goo的—模糊匹配## [1] FALSE FALSE TRUE FALSE FALSE FALSEstr_detect(x,"goo$") #包含goo并且以o结尾的## [1] FALSE FALSE FALSE FALSE FALSE FALSEstr_detect(x,"//d") #包含任意数字的## [1] FALSE FALSE FALSE FALSE TRUE TRUE2.匹配一次,返回位置下标grep("goo",x)## [1] 3grep("//d",x)## [1] 5 6grep("r",x,ignore.case = T) #忽略大小写## [1] 2str_locate(x,"goo")## start end## [1,] NA NA## [2,] NA NA## [3,] 1 3## [4,] NA NA## [5,] NA NA## [6,] NA NAstr_locate(x,"//d") #发现只匹配到第一个就停止了## start end## [1,] NA NA## [2,] NA NA## [3,] NA NA## [4,] NA NA## [5,] 1 1## [6,] 3 33.全匹配-返回所有位置下标str_locate_all(x,"goo")## [[1]]## start end#### [[2]]## start end#### [[3]]## start end## [1,] 1 3#### [[4]]## start end#### [[5]]## start end#### [[6]]## start endstr_locate_all(x,"//d")## [[1]]## start end#### [[2]]## start end#### [[3]]## start end#### [[4]]## start end#### [[5]]## start end## [1,] 1 1## [2,] 2 2## [3,] 3 3## [4,] 4 4#### [[6]]## start end## [1,] 3 3## [2,] 4 4## [3,] 5 5## [4,] 6 62.提取1.按位置提取substr(x,1,3)## [1] "stu" "Rpr" "goo" "中国 " "201" "加油2"substr(x,1:2,3) #即1,3 2,3 1,3 2,3 1,3 2,3## [1] "stu" "pr" "goo" "国 " "201" "油2"str_sub(x,1,3)## [1] "stu" "Rpr" "goo" "中国 " "201" "加油2"str_sub(x,1:2,3)## [1] "stu" "pr" "goo" "国 " "201" "油2"str_sub(x,-3) #倒数3个## [1] "dy " "ing" "ood" "中国 " "016" "017"2.按匹配提取grep("goo",x,value = T)## [1] "good"grep("//d",x,value = T)## [1] "2016" "加油2017"str_subset(x,"goo") #返回匹配的整个字符## [1] "good"str_subset(x,"//d")## [1] "2016" "加油2017"str_match(x,"goo") #只返回匹配的部分## [,1]## [1,] NA## [2,] NA## [3,] "goo"## [4,] NA## [5,] NA## [6,] NAstr_match(x,"//d") #只匹配一次## [,1]## [1,] NA## [2,] NA## [3,] NA## [4,] NA## [5,] "2"## [6,] "2"str_match_all(x,"//d")## [[1]]## [,1]#### [[2]]## [,1]#### [[3]]## [,1]#### [[4]]## [,1]#### [[5]]## [,1]## [1,] "2"## [2,] "0"## [3,] "1"## [4,] "6"#### [[6]]## [,1]## [1,] "2"## [2,] "0"## [3,] "1"## [4,] "7"str_count(x,"//d") #匹配多少次## [1] 0 0 0 0 4 43.替代sub("g","H",x) #只匹配一次## [1] "study " "RproHaming" "Hood" "中国 " "2016"## [6] "加油2017"gsub("g","H",x) #匹配所有次## [1] "study " "RproHaminH" "Hood" "中国 " "2016"## [6] "加油2017"str_replace(x,"g","H")## [1] "study " "RproHaming" "Hood" "中国 " "2016"## [6] "加油2017"str_replace_all(x,"g","H")## [1] "study " "RproHaminH" "Hood" "中国 " "2016"## [6] "加油2017"4.分割strsplit("good good study"," ") #返回列表## [[1]]## [1] "good" "good" "study"str_split("good good study"," ") #返回列表## [[1]]## [1] "good" "good" "study"str_split_fixed("good good study"," ",3) #返回矩阵## [,1] [,2] [,3]## [1,] "good" "good" "study"5.粘合paste("good","good","study",sep=",")## [1] "good,good,study"paste(x,sep=",") #字符串向量sep无用## [1] "study " "Rprogaming" "good" "中国 " "2016"## [6] "加油2017"paste(x,collapse =",") #字符串向量时,用collpase## [1] "study ,Rprogaming,good,中国 ,2016,加油2017"paste(x,y,sep=",")## [1] "study ,good" "Rprogaming,good" "good,study" "中国 ,good"## [5] "2016,good" "加油2017,study"paste(x,y,collapse =",")## [1] "study good,Rprogaming good,good study,中国 good,2016 good,加油2017 study"str_c("good","good","study",sep=",")## [1] "good,good,study"str_c(x,collapse =",")## [1] "study ,Rprogaming,good,中国 ,2016,加油2017"str_c(x,y,sep=",")## [1] "study ,good" "Rprogaming,good" "good,study" "中国 ,good"## [5] "2016,good" "加油2017,study"str_c(x,y,collapse =",")## [1] "study good,Rprogaminggood,goodstudy,中国 good,2016good,加油2017study"6.排序order(x) #返回排序下标## [1] 5 3 2 1 6 4sort(x) #返回值## [1] "2016" "good" "Rprogaming" "study " "加油2017"## [6] "中国 "rank(x) #返回排序的名次## [1] 4 3 2 6 1 5#decreasing=T 表明降序, locale="zh"按中文习惯,"en"按英文习惯,"ASCII"按这个编码str_order(x,decreasing = F,locale ="zh")## [1] 5 6 4 3 2 1str_sort(x,decreasing = T,locale ="en")## [1] "加油2017" "中国 " "study " "Rprogaming" "good"## [6] "2016"7.填充,排版,大小写转换str_pad(x,7,side ="left",pad="?") #填充 "both","right"## [1] "?study " "Rprogaming" "???good" "??中国 " "???2016"## [6] "加油2017"str_dup(x,2) #复制## [1] "study study " "RprogamingRprogaming" "goodgood"## [4] "中国中国 " "20162016" "加油2017加油2017"str_trim(x,side="both") #去除空格和换行## [1] "study" "Rprogaming" "good" "中国" "2016"## [6] "加油2017"tolower("HH") #小写## [1] "hh"toupper("hh") #大写## [1] "HH"为什么大家选择光环大数据!大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请大数据领域具有多年经验的讲师,提高教学的整体质量与教学水准。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

R-note一、基本函数1.函数c()—向量,length()—长度,mode()—众数,rbind()—组合,cbind()—转置,mode()—属性(数值、字符等)2.函数mean( )-中位数, sum( )-求和, min( )-最小值, max( )-最大值, var( )-方差, sd( )-标准差, prod( ) –连乘3.函数help()--帮助4.正态分布函数rnorm( ) 、泊松分布函数rpois( ) 、指数分布函数rexp( ) 、Gamma分布函数rgamma( ) 、均匀分布函数runif( ) 、二项分布函数rbinom( ) 、几何分布函数rgeom( )(一)基本函数1.>2:60*2+1[1]5 7 9 11……..。

(共60个数)2. a[5]:a数列第5个数,a[-5]:删除a数列第5位数a[-(1:5)]: 删除a数列第1-5位数a[c(2,4,7)]:a数列第2,4,7位数a[a<20]:a数列小于20的数a[a[3]]:先查找a数列第3位数对应数值,然后找第该位数对应数值5.Seq()函数---序列数产生器Seq(5,20):产生5,6。

20的数集Seq(5,100,by=2):产生5开始,步长为2的数集,最大值为100Seq(5,100,length=10):产生从5开始,从第三个数开始等于第二个数加上第二个数减去第一个数的差值,最后一个数为100.如:=+()6.letters():产生字母序列letters[1:30]:a,b,c,d…..30个字母()选择(a):a数列里面最大数which(a==2):查找a数列中等于2的数,并返回该数所对应位置a[which(a==2)]:先查找查找a数列中等于2的数,并返回该数所对应位置,然后对应的数值举例:a<-c(1,3,5,7)> which(a>5)[1] 4> a[which(a>5)][1] 7()函数---反转举例:> a=1:10> rev(a)[1] 10 9 8 7 6 5 4 3 2 1()函数---升序排列举例:> a=c(1,4,2,5,3,5,4,7,4)> sort(a)[1] 1 2 3 4 4 4 5 5 7()函数---将数据转变成按行列排布举例:> a=1:20> matrix(a,nrow=5,ncol=4)[,1] [,2] [,3] [,4][1,] 1 6 11 16[2,] 2 7 12 17[3,] 3 8 13 18[4,] 4 9 14 19[5,] 5 10 15 2010.函数t()----矩阵行列反置举例:> matrix(a,nrow=5,ncol=4)[,1] [,2] [,3] [,4][1,] 1 6 11 16[2,] 2 7 12 17[3,] 3 8 13 18[4,] 4 9 14 19[5,] 5 10 15 20> t( matrix(a,nrow=5,ncol=4))[,1] [,2] [,3] [,4] [,5][1,] 1 2 3 4 5[2,] 6 7 8 9 10[3,] 11 12 13 14 15[4,] 16 17 18 19 2011. diag():矩阵对角元素向量或生成对角矩阵举例:> a=matrix(1:16,nrow=4,ncol=4)> a[,1] [,2] [,3] [,4][1,] 1 5 9 13[2,] 2 6 10 14[3,] 3 7 11 15[4,] 4 8 12 16> diag(a)[1] 1 6 11 16> diag(diag(a))[,1] [,2] [,3] [,4][1,] 1 0 0 0[2,] 0 6 0 0[3,] 0 0 11 0[4,] 0 0 0 1612.统计分布每一种分布有四个函数:d――density(密度函数),p――分布函数,q――分位数函数,r――随机数函数。

比如,正态分布的这四个函数为dnorm,pnorm,qnorm,rnorm。

下面我们列出各分布后缀,前面加前缀d、p、q或r就构成函数名:norm:正态,t:t分布,f:F分布,chisq:卡方(包括非中心)unif:均匀,exp:指数,weibull:威布尔,gamma:伽玛,beta:贝塔lnorm:对数正态,logis:逻辑分布,cauchy:柯西,binom:二项分布,geom:几何分布,hyper:超几何,nbinom:负二项,pois:泊松signrank:符号秩,wilcox:秩和,tukey:学生化极差():矩阵求逆或解线性方程14. eigen():矩阵的特征值分解生成excel类似的数组举例:> a=c(1,3,5,6,7)> b=c(2,4,6,6,8)> x=(a,b)> xa b1 1 22 3 43 5 64 6 65 7 8> (x=('重量'=a,'运费'=b))重量运费1 1 22 3 43 5 64 6 65 7 816.画散点图 plot()(二)初级函数文件读取:举例:>(x=(""))V1 V2 V31 12 32 4 5 62.读取excel文件1)先将excel文件保存为prn文件> y<("",header=T)> yage high weight1 18 150 502 17 160 602)安装RODBC安装包,导入excle文件举例:> local({pkg<(sort(.package=TRUE)),graphics=T$+ if(nchar(pkg))library(pkg,Error: unexpected 'if' in:"local({pkg<(sort(.package=TRUE)),graphics=T$if"> library(RODBC)> z<-odbcConnectExcel("")> (w<-sqlFetch(z,"Sheet1"))age high weight1 18 150 502 17 160 603. 循环语句:for举例:> for(i in 1:20){a[i]=i*2+3}> a[1] 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 434.循环语句:while举例:> a[1]=5> i=1> while(a[i]<121){i=i+1;a[i]=a[i-1]+2}> a[1] 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39[19] 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75[37] 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111[55] 113 115 117 119 121():数据来源,可将txt编辑好的程序直接读取,并运行。

举例:> source("D:\\百度云\\")[1] 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39[19] 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75[37] 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111[55] 113 115 117 119 1216.综合举例题目:模拟产生统计专业同学的名单(学号区分),记录数学分析,线性代数,概率统计三科成绩,然后进行一些统计分析结果:> num=seq(1008001,1008100)> num[1] 1008001 1008002 1008003 1008004 1008005 1008006 1008007 1008008 1008009[10] 1008010 1008011 1008012 1008013 1008014 1008015 1008016 1008017 1008018[19] 1008019 1008020 1008021 1008022 1008023 1008024 1008025 1008026 1008027[28] 1008028 1008029 1008030 1008031 1008032 1008033 1008034 1008035 1008036[37] 1008037 1008038 1008039 1008040 1008041 1008042 1008043 1008044 1008045[46] 1008046 1008047 1008048 1008049 1008050 1008051 1008052 1008053 1008054[55] 1008055 1008056 1008057 1008058 1008059 1008060 1008061 1008062 1008063[64] 1008064 1008065 1008066 1008067 1008068 1008069 1008070 1008071 1008072[73] 1008073 1008074 1008075 1008076 1008077 1008078 1008079 1008080 1008081[82] 1008082 1008083 1008084 1008085 1008086 1008087 1008088 1008089 1008090[91] 1008091 1008092 1008093 1008094 1008095 1008096 1008097 1008098 1008099[100] 1008100> x1=round(runif(100,min=80,max=100))> x1[1] 83 97 100 90 95 91 93 91 97 87 89 86 94 99 94 97 89 83[19] 82 98 98 84 100 87 89 97 99 94 88 93 89 90 89 83 93 95[37] 90 81 94 95 82 94 94 96 82 94 90 91 83 96 97 93 98 81[55] 87 80 94 84 94 80 87 84 83 85 96 81 97 87 93 97 98 82[73] 85 90 89 90 88 89 98 88 81 81 96 85 98 87 96 91 86 98[91] 100 89 87 85 90 90 82 80 81 95>> x2=round(rnorm(100,mean=80,sd=7))> x2[1] 73 79 88 88 92 79 77 90 87 83 93 85 80 80 84 87 63 72 78 77 85 81 80 78[25] 79 73 73 90 82 83 80 86 79 74 83 88 90 83 79 83 68 69 71 85 83 86 82 67[49] 84 72 66 91 74 83 73 78 86 77 81 81 89 84 83 82 91 81 80 69 92 85 82 79[73] 88 69 80 71 89 79 82 71 81 67 82 72 87 78 87 84 81 94 75 80 71 86 78 75[97] 75 72 95 75> x3=round(rnorm(100,mean=83,sd=18))> x3[1] 71 64 84 97 56 71 72 72 96 85 93 80 80 110 78 118 55 85[19] 99 83 92 113 65 91 76 120 63 78 72 70 94 101 69 84 100 87[37] 103 114 77 70 73 54 89 78 66 83 46 113 68 94 89 115 80 105[55] 67 100 73 89 80 64 115 74 81 99 82 90 92 90 73 101 88 96[73] 101 80 100 64 74 121 81 94 72 55 78 88 60 103 70 63 96 72[91] 104 93 92 110 74 82 80 111 64 92> x3[which(x3>100)]=100> x3[1] 71 64 84 97 56 71 72 72 96 85 93 80 80 100 78 100 55 85[19] 99 83 92 100 65 91 76 100 63 78 72 70 94 100 69 84 100 87[37] 100 100 77 70 73 54 89 78 66 83 46 100 68 94 89 100 80 100[55] 67 100 73 89 80 64 100 74 81 99 82 90 92 90 73 100 88 96[73] 100 80 100 64 74 100 81 94 72 55 78 88 60 100 70 63 96 72[91] 100 93 92 100 74 82 80 100 64 92> x=(num,x1,x2,x3) –数据合并> xnum x1 x2 x31 1008001 83 73 712 1008002 97 79 643 1008003 100 88 844 1008004 90 88 976 1008006 91 79 717 1008007 93 77 728 1008008 91 90 729 1008009 97 87 9610 1008010 87 83 8511 1008011 89 93 9312 1008012 86 85 8013 1008013 94 80 8014 1008014 99 80 10015 1008015 94 84 7816 1008016 97 87 10017 1008017 89 63 5518 1008018 83 72 8519 1008019 82 78 9920 1008020 98 77 8321 1008021 98 85 9222 1008022 84 81 10023 1008023 100 80 6524 1008024 87 78 9125 1008025 89 79 7626 1008026 97 73 10027 1008027 99 73 6328 1008028 94 90 7829 1008029 88 82 7230 1008030 93 83 7031 1008031 89 80 9432 1008032 90 86 10033 1008033 89 79 6934 1008034 83 74 8435 1008035 93 83 10036 1008036 95 88 8737 1008037 90 90 10038 1008038 81 83 10039 1008039 94 79 7740 1008040 95 83 7041 1008041 82 68 7342 1008042 94 69 5443 1008043 94 71 8944 1008044 96 85 7845 1008045 82 83 6646 1008046 94 86 8347 1008047 90 82 4648 1008048 91 67 10050 1008050 96 72 9451 1008051 97 66 8952 1008052 93 91 10053 1008053 98 74 8054 1008054 81 83 10055 1008055 87 73 6756 1008056 80 78 10057 1008057 94 86 7358 1008058 84 77 8959 1008059 94 81 8060 1008060 80 81 6461 1008061 87 89 10062 1008062 84 84 7463 1008063 83 83 8164 1008064 85 82 9965 1008065 96 91 8266 1008066 81 81 9067 1008067 97 80 9268 1008068 87 69 9069 1008069 93 92 7370 1008070 97 85 10071 1008071 98 82 8872 1008072 82 79 9673 1008073 85 88 10074 1008074 90 69 8075 1008075 89 80 10076 1008076 90 71 6477 1008077 88 89 7478 1008078 89 79 10079 1008079 98 82 8180 1008080 88 71 9481 1008081 81 81 7282 1008082 81 67 5583 1008083 96 82 7884 1008084 85 72 8885 1008085 98 87 6086 1008086 87 78 10087 1008087 96 87 7088 1008088 91 84 6389 1008089 86 81 9690 1008090 98 94 7291 1008091 100 75 10092 1008092 89 80 9394 1008094 85 86 10095 1008095 90 78 7496 1008096 90 75 8297 1008097 82 75 8098 1008098 80 72 10099 1008099 81 95 64100 1008100 95 75 92> (x,file="D:\\百度云\\",=F,=F,sep="") -保存数据():数据合并-合成举例:>x=(num,x1,x2,x3)():将数据写入(保存)txt文档举例:(x,file="D:\\百度云\\",=F,=F,sep=" ")9. mean():均值举例:():列均值举例:> colMeans(x)num x1 x2 x3> colMeans(x)[c("x1","x2","x3")]x1 x2 x3():举例:>apply(x,2,mean)num x1 x2 x3> apply(x,2,max)num x1 x2 x31008100 100 95 100> apply(x,2,min)num x1 x2 x31008001 80 63 46> apply(x[c("x1","x2","x3")],1,sum)—求总分[1] 227 240 272 275 243 241 242 253 280 255 275 251 254 279 256 284 207 240 259 258[21] 275 265 245 256 244 270 235 262 242 246 263 276 237 241 276 270 280 264 250 248[41] 223 217 254 259 231 263 218 258 235 262 252 284 252 264 227 258 253 250 255 225[61] 276 242 247 266 269 252 269 246 258 282 268 257 273 239 269 225 251 268 261 253[81] 234 203 256 245 245 265 253 238 263 264 275 262 250 271 242 247 237 252 240 262> (apply(x[c("x1","x2")],1,sum))---求总分最大的人是第几个[1] 46> x$num[(apply(x[c("x1","x2")],1,sum))]---求总分最大的人num[1] 1008046第二讲():绘制直方图接上例:>hist(x$x1)():绘制散点图接上例:> plot(x1,x2)> plot(x$x1,x$x2)():列联函数> table(x$x1)-----各数出现频数80 81 82 83 85 86 87 88 896 6 4 6 8 3 5 4 190 91 92 93 94 95 96 97 983 5 5 7 104 25 799 1004 5():柱状图接上例:> barplot(table(x$x1))():饼图接上例:> pie(table(x$x1))():箱尾图接上例:> boxplot(x$x1,x$x2,x$x3)1)箱子的上下横线为样本的25%和75%分位数2)箱子中间的横线为样本的中位数3)上下延伸的直线称为尾线,尾线的尽头为最高值和最低值4)异常值():箱线图接上例:> boxplot(x$x1,x$x2,x$x3,col=c("red","green","blue"),notch=T)或者:> boxplot(x[2:4],col=c("red","green","blue"),notch=T)():水平放置箱尾图接上例:>boxplot(x$x1,x$x2,x$x3,horizontal=T)():星象图1)每个观测单位的数值表示为一个图形2)每个图的每个角表示一个变量,字符串类型会标注在图的下方3)角线的长度表达值的大小A:接上例:> stars(x[c("x1","x2","x3")])B: > stars(x[c("x1","x2","x3")],full=T,=T)—饼状分割C: > stars(x[c("x1","x2","x3")],full=F,=T)():脸谱图1)用五官的宽度和高度来描绘数值2)人对脸谱高度敏感和强记忆3)适合较少样本的情况接上例:> library(tcltk2)> library(aplpack)> faces(x[c("x1","x2","x3")])effect of variables:modified item Var"height of face " "x1""width of face " "x2""structure of face" "x3""height of mouth " "x1""width of mouth " "x2""smiling " "x3""height of eyes " "x1""width of eyes " "x2""height of hair " "x3""width of hair " "x1""style of hair " "x2""height of nose " "x3""width of nose " "x1""width of ear " "x2""height of ear " "x3"21.其他脸谱:> library(TeachingDemos)> faces2(x)22.Stem():茎叶图> stem(x$x1)The decimal point is at the |80 | 00000000000082 | 000000000084 | 0000000086 | 0000000088 | 0000090 | 0000000092 | 00000000000094 | 0000000000000096 | 000000098 | 00000000000100 | 00000图:qqnorm(),qqline(),1)可用于判断是否正态分布2)直线的斜率是标准差,截距是均值3)点的散布越接近直线,则越接近正态分布接上例:> qqnorm(x1)> qqline(x1)24.散点图加深:plot()> plot(x$x1,x$x2,main="数学分析与线性代数成绩的关系",xlab="数学",ylab="线性",xlim=c(0,100),ylim=c(0,100),xaxs="i",yaxs="i",col="red",pch=19)25.折线图:plot()():密度图> plot(density(rnorm(1000)))27.内置数集:mtcars,iris,示例:>iris> sunflowerplot(iris[,3:4],col="red",="gold")28.散点图集:pairs()遍历样本中全部的变量配对,画出二元图,直观地了解所有变量之间的关系示例:> pairs(iris[,1:4])2)> plot(iris[,1:4],main="因素关系",pch=19,col="red",cex=2)3)par函数> par(mfrow=c(3,1))> plot(x1,x2);plot(x2,x3);plot(x3,x1)29.绘图颜色:colors()>colors()30.绘图设备:():31:绘图参数:mai():32.三维散点图:scatterplot3d()> library(scatterplot3d)> scatterplot3d(x[2:4])33.地图:map()> map("state",interior=FALSE)> map("world",fill=TRUE,col=(10))21。

相关文档
最新文档