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命令
AutoCAD 2011命令速查手册
RENDERCROP
渲染视口内指定的矩形区域(称为修剪窗口)。 访问方法
按钮 功能区:“渲染”选项卡 “渲染”面板 “渲染面域”
概要 渲染视口中指定矩形区域内的内容,而保留渲染窗口的其他部分不变。 在需要渲染模型的某一部分以测试设置和效果时使用此命令。 命令行提示 将显示以下提示:
命令行提示 将显示以下提示:
选择参照:在当前图形中选择一个外部参照或块 如果在功能区处于激活状态时编辑外部参照,则将显示“编辑参照”功能区上下文选项卡。 如果在命令提示下输入-refedit,则将显示选项。
REFSET
在位编辑参照(外部参照或块定义)时从工作集添加或删除对象。
访问方法 464
R命令
REDRAW
刷新当前视口中的显示。 访问方法
命令条目:'redraw 用于透明使用 概要 当 BLIPMODE 打开时,将从当前视口中删除编辑命令留下的点标记。
REDRAWALL
刷新所有视口中的显示。 访问方法
菜单:“视图” “重画” 命令条目:'redrawall 用于透明使用 概要 当 BLIPMODE 打开时,将从所有视口中删除编辑命令留下的点标记。
菜单:“工具” “外部参照和块在位编辑” “添加到工作集或外部参照和块在位编辑” “从工 作集删除”
概要 作为工作集组成部分的对象与当前图形中的其他对象明显不同。在当前图形中,工作集以外的 所有对象都将呈淡入显示。
命令行提示 将显示以下提示:
在参照编辑工作集和宿主图形之间传输对象... 输入选项[添加(A)/删除(R)]<添加>:输入选项或按 Enter 键
另一个角点 使用指定的点作为对角点创建矩形。
PLC 指令与梯形图速查手册
PLC 指令与梯形图速查手册目录第 1 章位逻辑指令1.1 LD 指令:载入常开触点1.2 A 指令:串联常开触点1.3 O 指令:并联常开触点1.4 LDN 指令:载入常闭触点1.5 AN 指令:串联常闭触点1.6 ON 指令:并联常闭触点1.7 LDI 指令:立即载入常开触点1.8 AI 指令:串联立即常开触点1.9 OI 指令:并联立即常开触点1.10 LDNI 指令:载入立即常闭触点1.11 ANI 指令:串联立即常闭触点1.12 ONI 指令:并联立即常闭触点1.13 NOT 指令:改变使能位输入状态1.14 EU 指令:上升边缘检测1.15 ED 指令:下降边缘检测1.16 ALD 指令:触点块串联1.17 OLD 指令:触点块并联1.18 LPS、LRD、LPP 指令:逻辑堆栈操作1.19 =指令:线圈输出1.20 =|指令:立即线圈输出1.21 S 指令:线圈置位1.22 SI 指令:线圈立即置位1.23 R 指令:线圈复位1.24 RI 指令:线圈立即复位1.25 NOP 指令:空操作1.26 X 指令:异或操作第 2 章比较指令2.1 LDB=指令:载入字节等于2.2 AB=指令:与运算字节等于2.3 OB=指令:或运算字节等于2.4 LDB 指令:载入字节不等于2.5 AB 指令:与运算字节不等于2.6 OB 指令:或运算字节不等于2.7 LDB=指令:载入字节大于或等于2.8 AB=指令:与运算字节大于或等于2.9 OB=指令:或运算字节大于或等于2.10 LDB=指令:载入字节小于或等于2.11 AB=指令:与运算字节小于或等于2.12 OOB=指令:或运算字节小于或等于2.13 LDB 指令:载入字节大于2.14 AB 指令:与运算字节大于2.15 OB 指令:或运算字节大于2.16 LDB 指令:载入字节小于2.17 AB 指令:与运算字节小于第 3 章转换指令3.1 BTI 指令:字节转换至整数3.2 ITB 指令:整数转换至字节3.3 ITD 指令:整数转换至长整数3.4 ITS 指令:整数转换至字符串3.5 DTI 指令:长整数转换至整数3.6 DTR 指令:长整数转换至实数3.7 DTS 指令:长整数转换至字符串3.8 ROUND 指令:取整为长整数3.9 TRUNC 指令:截断为长整数3.10 RTS 指令:实数转换至字符串3.11 BCDI 指令:BCD 码转换为整数3.12 IBCD 指令:整数转换为 BCD 码3.13 ITA 指令:整数转换至 ASCII 码3.14 DTA 指令:长整数转换至 ASCII 码3.15 RTA 指令:实数转换至 ASCII 码3.16 ATH 指令:ASCII 码转换至十六进制数字3.17 HTA 指令:十六进制数字转换 ASCII 码3.18 STI 指令:字符串转换至整数3.19 STD 指令:字符串转换至长整数3.20 STR 指令:字符串转换至实数3.21 DECO 指令:解码3.22 ENCO 指令:编码3.23 SEG 指令:七段显示转换第 4 章计数器指令4.1 CTU 指令:向上计数4.2 CTD 指令:向下计数4.3 CTUD 指令:双向计数4.4 HDEF 指令:定义高速计数器4.5 HSC 指令:高速计数器第 5 章浮点型数学运算指令5.1 +R 指令:实数加5.2 -R 指令:实数减5.3 *R 指令:实数乘5.4 /R 指令:实数除5.5 SQRT 指令:求平方根5.6 SIN 指令:求正弦值5.7 COS 指令:求余弦值5.8 TAN 指令:求正切值5.9 LN 指令:求自然对数5.10 EXP 指令:求指数值2.19 LDW=指令:载入字等于2.20 AW=指令:与运算字等于2.21 OW=指令:或运算字等于2.22 LDW 指令:载入字不等于2.23 AW 指令:与运算字不等于2.24 OW 指令:或运算字不等于2.25 LDW=指令:载入字大于或等于2.26 AW=指令:与运算字大于或等于2.27 OW=指令:或运算字大于或等于2.28 LDW=指令:载入字小于或等于2.29 AW=指令:与运算字小于或等于2.30 OW=指令:或运算字小于或等于2.31 LDW 指令:载入字大于2.32 AW 指令:与运算字大于2.33 OW 指令:或运算字大于2.34 LDW 指令:载入字小于2.35 AW 指令:与运算字小于2.36 OW 指令:或运算字小于2.37 LDD=指令:载入双字等于2.38 AD=指令:与运算双字等于2.39 OD=指令:或运算双字等于2.40 LDD 指令:载入双字不等于2.41 AD 指令:与运算双字不等于2.42 OD 指令:或运算双字不等于2.43 LDD=指令:载入双字大于或等于2.44 AD=指令:与运算双字大于或等于2.45 OD=指令:或运算双字大于或等于2.46 LDD=指令:载入双字小于或等于2.47 AD=指令:与运算双字小于或等于2.48 OD=指令:或运算双字小于或等于2.49 LDD 指令:载入双字大于2.50 AD 指令:与运算双字大于2.51 OD 指令:或运算双字大于2.52 LDD 指令:载入双字小于2.53 AD 指令:与运算双字小于2.54 OD 指令:或运算双字小于2.55 LDR=指令:载入实数等于2.56 AR=指令:与运算实数等于2.57 OR=指令:或运算实数等于2.58 LDR 指令:载入实数不等于2.59 AR 指令:与运算实数不等于2.60 OR 指令:或运算实数不等于2.61 LDR=指令:载入实数大于或等于2.62 AR=指令:与运算实数大于或等于2.63 OR=指令:或运算实数大于或等于2.64 LDR=指令:载入实数小于或等于2.65 AR=指令:与运算实数小于或等于2.66 OR=指令:或运算实数小于或等于2.67 LDR 指令:载入实数大于2.69 OR 指令:或运算实数大于2.70 LDR 指令:载入实数小于2.71 AR 指令:与运算实数小于2.72 OR 指令:或运算实数小于第 12 章字符串指令12.1 SLEN 指令:获取字符串长度12.2 SCPY 指令:将字符串 1 复制至字符串12.3 SSCPY 指令:从字符串复制子字符串12.4 SCAT 指令:字符串连接12.5 SFND 指令:在字符串 1 中查找字符串12.6 CFND 指令:在字符串中查找字符12.7 LDS=指令:载入字符串等于12.8 AS=指令:与运算字符串等于12.9 OS=指令:或运算字符串等于12.10 LDS 指令:载入字符串不等于12.11 AS 指令:与运算字符串不等于12.12 OS 指令:或运算字符串不等于12.13 ITS 指令:整数转换至字符串12.14 DTS 指令:双整数转换至字符串12.15 RTS 指令:实数转换至字符串12.16 STI 指令:字符串转换至整数12.17 STD 指令:字符串转换至长整数12.18 STR 指令:字符串转换至实数第 13 章表格指令13.1 FILL 指令:内存填充13.2 ATT 指令:增加至表格13.3 FND?TBL 指令:表格查找13.4 LIFO 指令:后入先出13.5 FIFO 指令:先入先出第 14 章定时器指令14.1 TON 指令:接通延时定时器14.2 TONR 指令:掉电保护性接通延时定时器14.3 TOF 指令:断开延时定时器14.4 BITIM 指令:开始间隔时间14.5 CITIM 指令:计算间隔时间第 15 章特殊指令15.1 网络读/网络写15.2 发送/接收15.3 脉冲输出15.4 PID 指令。
R语言常见命令
1。
获取帮助ﻫ>help、start() 开启帮助文档>help(solve) 显示某命令得帮助信息,或者ﻫ>?solve对于由特殊字符指定得功能,这些参数必须用单引号或双引号括起来,使之成为一个“字符串”,如>help(”[[”)与某个主题相关得例子通常可以用下面得命令得到ﻫ〉example(topic)2. 命令简介ﻫR对大小写就是敏感得;名称不能以数字开始;基本得命令由表达式或者赋值语句组成。
如果一个表达式被作为一条命令给出,它将被求值、打印而表达式得值并不被保存。
一个赋值语句同样对表达式求值之后把表达式得值传给一个变量,不过并不会自动得被打印出来;ﻫ命令由分号(;)来分隔,或者另起新行;ﻫ基本命令可以由花括号(f与g)合并为一组复合表达式;ﻫ注释几乎可以被放在任何地方,只要就是以井号(#)开始,到行末结束;如果一个命令在行莫仍没有结束,R将会给出一个不同得提示符,默认得就是‘+’。
3。
命令文件得执行与输出转向到文件如果命令存储于一个外部文件中,比如工作目录work中得mands、R,她们可以随时在R得任务中被执行〉source("mands、R”)在Windows中Source也可以由File菜单执行。
ﻫ函数sink,ﻫ〉sink("record、lis”)ﻫ将把所有后续得输出由终端转向一个外部文件,record。
lis。
命令ﻫ> sink() 将把信息重新恢复到终端上。
4、数据得保持与对象得清除R所创建、操作得实体就是对象。
对象可以就是变量、数组、字符串、函数以及由这些元素组成得其它结构;>objects() 用来显示目前存储在R中得对象得名字、而当前存储得所有对象得组合被称为workspace;清除对象可以使用rm命令:ﻫ〉rm(x, y,z, ink, junk, temp,foo, bar)所有在一个R任务中被创建得对象都可以在文件中被永久保存,并在其它得R任务中被使用。
r语言的基础语法及常用命令
r语言的基础语法及常用命令R语言是一种用于数据分析和统计建模的编程语言,它具有丰富的基础语法和常用命令。
本文将介绍R语言的基础语法和常用命令,帮助读者快速入门和理解R语言的使用。
1. 变量和数据类型在R语言中,可以通过使用赋值符号“<-”或“=”来创建变量,并且不需要事先声明变量的类型。
R语言支持多种数据类型,包括数值型、字符型、逻辑型、因子型等。
例如,可以使用以下代码创建一个数值型变量x,并赋值为10:```Rx <- 10```2. 数据结构R语言中常用的数据结构包括向量、矩阵、数组、数据框和列表。
向量是最基本的数据结构,可以存储多个相同类型的元素。
矩阵是二维的数据结构,可以存储多个相同类型的元素。
数组是多维的数据结构,可以存储多个相同类型的元素。
数据框是类似于Excel表格的数据结构,可以存储多个不同类型的变量。
列表是一种包含不同类型元素的数据结构。
3. 控制结构R语言中常用的控制结构包括条件语句(if-else语句)和循环语句(for循环、while循环)。
条件语句用于根据条件执行不同的代码块。
例如,以下代码展示了一个简单的if-else语句:```Rx <- 10if (x > 5) {print("x大于5")} else {print("x小于等于5")}```循环语句用于重复执行一段代码块。
例如,以下代码展示了一个简单的for循环:```Rfor (i in 1:5) {print(i)}```4. 函数R语言中的函数是一段具有特定功能的代码块,可以重复使用。
R语言提供了许多内置函数,还可以自定义函数。
例如,以下代码展示了一个自定义函数,用于计算两个数的和:```Rsum <- function(a, b) {return(a + b)}result <- sum(3, 5)print(result) # 输出8```5. 数据读写R语言中可以通过各种方式读取和写入数据。
R基本命令
因为是考R命令,建议大家敲一下这些命令,理解的更容易一些,而且也方便以后使用。
R基本命令:R赋值:=和<-和->查看当前环境变量ls() 删除变量rm() 查看和导入R中的预存数据data()eg.删除所有对象rm(list=ls()),删除变量x和y:rm(x,y)测试运行时间:system.time()获取帮助:(eg.solve函数):①?solve②help(solve)③example(solve)加载R文件:source(“one.r”)sink函数:sink(“a.r”) 输出流定向到a.r里,sink()重新将输出流定向到控制台常用函数:log2(),log10(),幂exp(),平方sqrt()…R基本数据结构R的基本数据结构:向量(最重要的对象)、矩阵、数组、数据框、因子、列表构建向量:x<-c(1,2,3,4,5)等价于c(1:5)->x等价于assign("x", c(1,2,3,4,5))等价于x<-seq(1,5,length=5)表示构建从1到5 的长度为5的等差数列z<-c(8,6,4,2)等价于z<-c(2*4:1)等价于z<-seq(8,2,length=4)y<-c(x,0,x) 创建11个元素的y向量。
向量的运算:每一个元素都可以进行相应的运算,且长度可以不同。
v <- 2*x + y + 1产生长度为11的向量v,它由2*x重复2.2次,y重复一次,1重复11次得到的向量相加而成。
常用函数(针对向量):均值mean()、方差var()、最大值max()、最小值min()长度length(), 累积乘积prod(),升序排序sort()、最大最小值range()。
unique()可去重复其他函数:s5 <- rep(x, times=5)将x拷贝5次放到s5中is.na(x)返回一个逻辑向量,表示x中是否是NA(not available),若是NA则返回TRUE类似的有is.nan(x)判断是否为NaN(NaN表示数据不可利用,如0/0)is.null(x)判断对象x是否为空,is.infinite判断x的元素是否为Inf(无穷)构建字符向量:x<-c(“Hello”,”World”)等价于x=c(‘Hello’,’World’)等价于x<-paste(c(‘Hello’,’World’)) paste()函数将参数一个接一个按照分隔符连接:如paste(c("chr"),c(1:22,’X’,’Y’),sep="")返回chr1,chr2直到chrY.索引向量:在向量x的方括号中加入索引变量可获得x的子集eg. x[is.infinite(x)]<- -1将x中为无穷的数全部替换成-1x[c(3,1,5,1,2,3)] 取x的第3,1,5,1,2,3个元素,x[1:5]取x前5个元素。
【R】R语言手册
【R】R语⾔⼿册2018-07-30 21:09:07在R的官⽅教程⾥是这么给R下注解的:⼀个数据分析和图形显⽰的程序设计环境(A system for data analysis and visualization which is built based on S language.)。
R的源起R是S语⾔的⼀种实现。
S语⾔是由 AT&T贝尔实验室开发的⼀种⽤来进⾏数据探索、统计分析、作图的解释型语⾔。
最初S语⾔的实现版本主要是S-PLUS。
S-PLUS是⼀个商业软件,它基于S语⾔,并由MathSoft公司的统计科学部进⼀步完善。
后来Auckland⼤学的Robert Gentleman 和 Ross Ihaka 及其他志愿⼈员开发了⼀个R系统。
R的使⽤与S-PLUS有很多类似之处,两个软件有⼀定的兼容性。
R is freeR是⽤于统计分析、绘图的语⾔和操作环境。
R是属于GNU系统的⼀个⾃由、免费、源代码开放的软件,它是⼀个⽤于统计计算和统计制图的优秀⼯具。
R是⼀套完整的数据处理、计算和制图软件系统。
其功能包括:数据存储和处理系统;数组运算⼯具(其向量、矩阵运算⽅⾯功能尤其强⼤);完整连贯的统计分析⼯具;优秀的统计制图功能;简便⽽强⼤的编程语⾔:可操纵数据的输⼊和输⼊,可实现分⽀、循环,⽤户可⾃定义功能。
R是⼀个免费的⾃由软件,它有UNIX、LINUX、MacOS和WINDOWS版本,都是可以免费下载和使⽤的,在那⼉可以下载到R的安装程序、各种外挂程序和⽂档。
在R的安装程序中只包含了8个基础模块,其他外在模块可以通过CRAN获得。
R的特点(1) 有效的数据处理和保存机制。
(2) 拥有⼀整套数组和矩阵的操作运算符。
(3) ⼀系列连贯⽽⼜完整的数据分析中间⼯具。
(4) 图形统计可以对数据直接进⾏分析和显⽰,可⽤于多种图形设备。
(5) ⼀种相当完善、简洁和⾼效的程序设计语⾔。
它包括条件语句、循环语句、⽤户⾃定义的递归函数以及输⼊输出接⼝。
最新最全《Intel系列CPU指令速查手册》
指令名称指令形式机器码ES:ES:26CS:CS:2E SS:SS:36DS:DS:3E FS:FS:64GS:GS:65Opsize:Opsize:66Address:Address:67AAA AAA 37AAD AAD D5 0A 或 D5 ib AAM AAM D4 0A 或 D4 ib AASAAS3F ADC AL, imm814 ib ADC AX, imm1615 iw ADC EAX, imm3215 id ADC r/m8, imm880 /2 ib ADC r/m16,imm1681 /2 iw ADC r/m32,imm3281 /2 id ADC r/m16,imm883 /2 ib ADC r/m32,imm883 /2 ib ADC r/m8,r810 /r ADC r/m16,r1611 /r ADC r/m32,r3211 / r ADC r8,r/m812 /r ADC r16,r/m1613 /r ADC r32,r/m3213 /r ADD AL, imm804 ib ADD AX, imm1605 iw ADD EAX, imm3205 id ADD r/m8, imm880 /0 ib ADD r/m16,imm1681 /0 iw ADD r/m32,imm3281 /0 id ADD r/m16,imm883 /0 ib ADD r/m32,imm883 /0 ib ADD r/m8,r800 /r ADD r/m16,r1601 /r ADD r/m32,r3201 / r ADD r8,r/m802 /r ADD r16,r/m1603 /r ADD r32,r/m3203 /rADCADDAND AL, imm824 ib AND AX, imm1625 iw AND EAX, imm3225 id AND r/m8, imm880 /4 ib AND r/m16,imm1681 /4 iw AND r/m32,imm3281 /4 id AND r/m16,imm883 /4 ib AND r/m32,imm883 /4 ib AND r/m8,r820 /r AND r/m16,r1621 /r AND r/m32,r3221 /r AND r8,r/m822 /r AND r16,r/m1623 /r AND r32,r/m3223 /r ARPLARPL r/m16,r1663 /rBOUND r16,m16&16BOUND r32,m32&32BSF r16,r/m16BSF r32,r/m32BSR r16,r/m16BSR r32,r/m32BSWAPBSWAP reg320F C8+rd BT r/m16,r160F A3BT r/m32,r320F A3BT r/m16,imm80F BA /4BT r/m32,imm80F BA /4BTC r/m16,r160F BB BTC r/m32,r320F BB BTC r/m16,imm80F BA /7BTC r/m32,imm80F BA /7Btr r/m16,r160F B3Btr r/m32,r320F B3Btr r/m16,imm80F BA /6Btr r/m32,imm80F BA /6BTS r/m16,r160F AB BTS r/m32,r320F AB BTS r/m16,imm80F BA /5BTS r/m32,imm80F BA /5CALL rel16E8 cw CALL rel32E8 cd CALL r/m16FF /2CALL r/m32FF /2BTSCALLBTCBtrBSR0F BD BTBOUND62 /rBSF0F BCANDCMPS m16, m16A7CMPS m32, m32A7CMPSB A6CMPSW A7CMPSDA7CMPXCHG r/m8,r80F B0 /r CMPXCHG r/m16,r160F B1 /r CMPXCHG r/m32,r320F B1 /r CMPXCHG8B CMPXCHG8B m640F C7 /1 m64CPUID CPUID 0F A2CWD CWD 99CWDE CWDE 98DAA 27DASDAS 2F DEC r/m8FE /1DEC r/m16FF /1DEC r/m32FF /1DEC r1648 +rw DEC r3248 +rd DIV r/m8F6 /6DIV r/m16F6 /7DIV r/m32F6 /7EMMS EMMS0F 77ENTER imm16,0C8 iw 00ENTER imm16,1C8 iw 01ENTER imm16,imm8C8 iw ib ESC 0D8h xxh ESC 1D9h xxh ESC 2DAh xxh ESC 3DBh xxh ESC 4DCh xxh ESC 5DDh xxh ESC 6DEh xxh ESC 7DFh xxh F2XM1F2XM1D9 F0FABSFABSD9 E1FADD m32realD8 /0FADD m64realDC /0ESCFADDDIVENTERCMPXCHGDECCMPSFSUBP ST(i), ST(0)DE E8-i FSUBP DE E9FISUB m32int DA /4FISUB m16int DE /4FSUbr m32real D8 /5FSUbr m64real DC /5FSUbr ST(0), ST(i)D8 E8+i FSUbr ST(i), ST(0)DC E0+i FSUbrP ST(i), ST(0)DE E0+i FSUbrP DE E1FISUbr m32int DA /5FISUbr m16int DE /5FTST FTST D9 E4FUCOM ST(i)DD E0+i FUCOM DD E1FUCOMP ST(i)DD E8+i FUCOMP DD E9FUCOMPP FUCOMPP DD E8+i FWAIT FWAIT 9B FXAM FXAM D9 E5FXCH ST(i)D9 C8+i FXCHD9 C9FXRSTOR FXRSTOR m512byte 0F AE /1FXSAVE FXSAVE m512byte 0F AE /0FXtrACT FXtrACT D9 F4FYL2X FYL2X D9 F1FYL2XP1FYL2XP1D9 F9HLTHLT F4IDIV r/m8F6 /7IDIV r/m16F7 /7IDIV r/m32F7 /7IMUL r/m8F6 /5IMUL r/m16F7 /5IMUL r/m32F7 /5IMUL r16, r/m160F AF /r IMUL r32, r/m320F AF /r IMUL r16,r/m16,imm86B /r ib IMUL r32,r/m32,imm86B /r ib IMUL r16, imm86B /r ib IMUL r32, imm86B /r ib IMUL r16,r/m16,imm1669 /r iwIMUL FUCOMP FXCH IDIVFSUbrP FISUbr FUCOM FSUBP FISUBFSUbrIMUL r32,r/m32,imm3269 /r id IMUL r16, imm1669 /r iw IMUL r32, imm3269 /r id IN AL,imm8E4 ib IN AX,imm8E5 ib IN EAX,imm8E5 ib IN AL,DX EC IN AX,DX ED IN EAX,DX ED INC r/m8FE /0INC r/m16FF /0INC r/m32FF /0INC r1640+rw INC r3240+rd INS m8, DX6C INS m16, DX 6D INS m32, DX 6D INSB INSB 6C INSW INSW 6D INSD INSD 6D INT 3INT 3CC INT imm8INT imm8CD ib INTO INTO CE INVD INVD 0F 08INVLPG INVLPG 0F 01/7IRET IRET CF IREtdIREtd CF JA rel877 cb JAE rel873 cb JB rel872 cb JBE rel876 cb JC rel872 cb JCXZ rel8E3 cb JECXZ rel8E3 cb JE rel874 cb JG rel87F cb JGE rel87D cb JL rel87C cb JLE rel87E cb JNA rel876 cb JNAE rel872 cb JNB rel873 cb JNBE rel877 cbINS ININCJNC rel873 cb JNE rel875 cb JNG rel87E cb JNGE rel87C cb JNL rel87D cb JNLE rel87F cb JNO rel871 cb JNP rel87B cb JNS rel879 cb JNZ rel875 cb JO rel870 cb JP rel87A cb JPE rel87A cb JPO rel87B cb JS rel878 cb JZ rel874 cb JA rel16/320F 87 cw/cd JAE rel16/320F 83 cw/cd JB rel16/320F 82 cw/cd JBE rel16/320F 86 cw/cd JC rel16/320F 82 cw/cd JE rel16/320F 84 cw/cd JZ rel16/320F 84 cw/cd JG rel16/320F 8F cw/cd JMP rel8EB cb JMP rel16E9 cw JMP rel32E9 cd JMP r/m16FF /4JMP r/m32FF /4JMP ptr16:16EA cd JMP ptr16:32EA cp JMP m16:16FF /5JMP m16:32FF /5LAHF LAHF9F LAR r16,r/m16LAR r32,r/m32LDS r16,m16:16LDS r32,m16:32LSS r16,m16:16LSS r32,m16:32LES r16,m16:16LES r32,m16:32LSS 0F B2 /r LESC4 /rLAR 0F 02 /r LDS C5 /r JMPLFS r16,m16:16LFS r32,m16:32LGS r16,m16:16LGS r32,m16:32LEA r16,m LEA r32,m LEAVE LEAVEC9LGDT LGDT m16&320F 01 /2LIDT LIDT m16&320F 01 /3LLDT LLDT r/m160F 00 /2LMSW LMSW r/m160F 01 /6LOCK LOCK F0LODS m8AC LODS m16AD LODS m32AD LODSB LODSB AC LODSW LODSW AD LODSD LODSD AD LOOP LOOP rel8E2 cb LOOPE LOOPE rel8E1 cb LOOPZ LOOPZ rel8E1 cb LOOPNE LOOPNE rel8E1 cb LOOPNZ LOOPNZ rel8E1 cb LSL r16,r/m16LSL r32,r/m32LtrLtr r/m160F 00 /3MOV r/m8,r888 /r MOV r/m16,r1689 /r MOV r/m32,r3289 /r MOV r8,r/m88A /r MOV r16,r/m168B /r MOV r32,r/m328B /r MOV r/m16,Sreg 8C /r MOV Sreg,r/m168E /r MOV AL,moffs8A0MOV AX,moffs16A1MOV EAX,moffs32A1MOV moffs8,AL A2MOV moffs16,AX A3MOV moffs32,EAX A3MOV r8,imm8B0+rb MOV r16,imm16B8+rw MOV r32,imm32B8+rdMOVLEA 8D /r LODS LSL 0F 03 /r LFS 0F B4 /r LGS 0F B5 /rMOV r/m8,imm8C6 /0MOV r/m16,imm16C7 /0MOV r/m32,imm32C7 /0MOV CR0,r320F 22 /r MOV CR2,r320F 22 /r MOV CR3,r320F 22 /r MOV CR4,r320F 22 /r MOV r32,CR00F 20 /r MOV r32,CR20F 20 /r MOV r32,CR30F 20 /r MOV r32,CR40F 20 /r MOV r32, DR0-DR70F 21 /r MOV DR0-DR7,r320F 23 /r MOVD mm, r/m320F 6E /r MOVD r/m32, mm 0F 7E /r MOVD xmm, r/m3266 0F 6E /r MOVD r/m32, xmm 66 0F 7E /r MOVQ mm, r/m640F 6F /r MOVQ mm/m64, mm 0F 7F /r MOVQ xmm1, xmm2/m64F3 0F 7E MOVQ xmm2/m64, xmm166 0F D6MOVS m8, m8A4MOVS m16, m16A5MOVS m32, m32A5MOVSB A4MOVSW A5MOVSDA5MOVSX r16,r/m80F BE /r MOVSX r32,r/m80F BE /r MOVSX r32,r/m160F BF /r MOVZX r16,r/m80F B6 /r MOVZX r32,r/m80F B6 /r MOVZX r32,r/m160F B7 /r MUL r/m8F6 /4MUL r/m16F7 /4MUL r/m32F7 /4NEG r/m8F6 /3NEG r/m16F7 /3NEG r/m32F7 /3NOPNOP 90NOT r/m8F6 /2MOVZXMULNEG MOVQMOVSMOVSXMOVDNOT r/m16F7 /2NOT r/m32F7 /2OR AL, imm80C ib OR AX, imm160D iw OR EAX, imm320D id OR r/m8, imm880 /1 ib OR r/m16,imm1681 /1 iw OR r/m32,imm3281 /1 id OR r/m16,imm883 /1 ib OR r/m32,imm883 /1 ib OR r/m8,r808 /r OR r/m16,r1609 /r OR r/m32,r3209 /r OR r8,r/m80A /r OR r16,r/m160B /r OR r32,r/m320B /r OUT imm8,AL E6 ib OUT imm8,AX E7 ib OUT imm8,EAX E7 ib OUT AL,DX EE OUT AX,DX EF OUT EAX,DX EF OUTS DX,m86E OUTS DX,m166F OUTS DX,m326F OUTSB OUTSB 6E OUTSW OUTSW 6F OUTSD OUTSD6F PACKSSWB mm1, mm2/m640F 63 /r PACKSSWB xmm1,xmm2/m12866 0F 63 /r PACKSSDW mm1, mm2/m640F 6B /r PACKSSDW xmm1,xmm2/m12866 0F 6B /r PACKUSWB mm1, mm2/m640F 67 /r PACKUSWB xmm1,xmm2/m12866 0F 67 /r PADDB mm, mm/m640F FC /r PADDB xmm1,xmm2/m12866 0F FC /r PADDW mm, mm/m640F FD /r PADDW xmm1,xmm2/m12866 0F FD /r PADDD mm, mm/m640F FE /r PADDD xmm1,xmm2/m12866 0F FE /r PADDQ mm1, mm2/m640F D4 /r PADDQ xmm1,xmm2/m12866 0F D4 /r PADDSB mm, mm/m640F EC /rPADDQ PADDSBPADDW PADDD PACKUSWB PADDB OUTS PACKSSWB PACKSSDW NOT OROUTPUSH imm86A PUSH imm1668PUSH imm3258PUSH CS 0E PUSH SS 16PUSH DS 1E PUSH ES 6PUSH FS 0F A0PUSH GS0F A8PUSHA PUSHA 60PUSHAD PUSHAD 60PUSHF PUSHF 9C PUSHFD PUSHFD9C PXOR mm, mm/m640F EF /r PXOR xmm1,xmm2/m12866 0F EF /r RCL r/m8, 1D0 /2RCL r/m8, CL D2 /2RCL r/m8, imm8C0 /2 ib RCL r/m16, 1D1 /2RCL r/m16, CL D3 /2RCL r/m16, imm8C1 /2 ib RCL r/m32, 1D1 /2RCL r/m32, CL D3 /2RCL r/m32, imm8C1 /2 ib RCR r/m8, 1D0 /3RCR r/m8, CL D2 /3RCR r/m8, imm8C0 /3 ib RCR r/m16, 1D1 /3RCR r/m16, CL D3 /3RCR r/m16, imm8C1 /3 ib RCR r/m32, 1D1 /3RCR r/m32, CL D3 /3RCR r/m32, imm8C1 /3 ib ROL r/m8, 1D0 /0ROL r/m8, CL D2 /0ROL r/m8, imm8C0 /0 ib ROL r/m16, 1D1 /0ROL r/m16, CL D3 /0ROL r/m16, imm8C1 /0 ib ROL r/m32, 1D1 /0ROL r/m32, CL D3 /0ROL r/m32, imm8C1 /0 ibRCLRCRROLPUSHPXORREPNE SCAS m32F2 AF REPZ CMPS m8, m8F3 A6REPZ CMPS m16, m16F3 A7REPZ CMPS m32, m32F3 A7REPZ SCAS m8F3 AE REPZ SCAS m16F3 AF REPZ SCAS m32F3 AF REPNZ CMPS m8, m8F2 A6REPNZ CMPS m16, m16F2 A7REPNZ CMPS m32, m32F2 A7REPNZ SCAS m8F2 AE REPNZ SCAS m16F2 AF REPNZ SCAS m32F2 AF RETC3RET CB RET imm16C2 iw RET imm16CA iw RSM RSM 0F AA SAHFSAHF 9E SAL r/m8, 1D0 /4SAL r/m8, CL D2 /4SAL r/m8, imm8C0 /4 ib SAL r/m16, 1D1 /4SAL r/m16, CL D3 /4SAL r/m16, imm8C1 /4 ib SAL r/m32, 1D1 /4SAL r/m32, CL D3 /4SAL r/m32, imm8C1 /4 ib SAR r/m8, 1D0 /7SAR r/m8, CL D2 /7SAR r/m8, imm8C0 /7 ib SAR r/m16, 1D1 /7SAR r/m16, CL D3 /7SAR r/m16, imm8C1 /7 ib SAR r/m32, 1D1 /7SAR r/m32, CL D3 /7SAR r/m32, imm8C1 /7 ib SHL r/m8, 1D0 /4SHL r/m8, CLD2 /4SALSARREPZREPNZRETSTOSB STOSB AA STOSW STOSW AB STOSD STOSD AB StrStr r/m160F 00 /1SUB AL, imm82C ib SUB AX, imm162D iw SUB EAX, imm322D id SUB r/m8, imm880 /5 ib SUB r/m16,imm1681 /5 iw SUB r/m32,imm3281 /5 id SUB r/m16,imm883 /5 ib SUB r/m32,imm883 /5 ib SUB r/m8,r828 /r SUB r/m16,r1629 /r SUB r/m32,r3229 / r SUB r8,r/m82A /r SUB r16,r/m162B /r SUB r32,r/m322B /r SYSENTER SYSENTER 0F 34SYSEXITSYSEXIT 0F 35TEST AL, imm8A8 ib TEST AX, imm16A9 iw TEST EAX, imm32A9 id TEST r/m8, imm8F6 /0 ib TEST r/m16,imm16F7 /0 ib TEST r/m32,imm32F7 /0 ib TEST r/m8,r884 /r TEST r/m16,r1685 /r TEST r/m32,r3285 /r UD2UD20F 0B VERR VERR 0F 00 /4VERW VERW 0F 00 /5WAIT WAIT 9B WBINVD WBINVD 0F 09WRMSR WRMSR 0F 30XADD r/m8, r80F C0 /r XADD r/m16, r160F C1 /r XADD r/m32, r320F C1 /r XCHG AX, r1690+rw XCHG r16, AX 90+rw XCHG EAX, r3290+rd XCHG r32, EAX 90+rd XCHG r/m8, r886 /rXCHGXADDTEST SUBAF CF OF PF SF ZFC1 (C0, C2, C3未定义)(SF ZF AF PF未定义)AF CF OF PF SF ZF或OF)被改变。
R语言-包的一些操作命令
R语⾔-包的⼀些操作命令R包的安装路径相关# R官⽹相关https:///https:///https:///R/?group_id=156https:///src/contrib/packages# R镜像相关https:///mirrors.htmlName,Country,City,URL,Host,Maintainer,OK,CountryCode,Comment"0-Cloud [https]",0-Cloud,0-Cloud,https:///,"Rstudio, automatic redirection to servers worldwide","winston # ",1,us,"secure_mirror_from_master" "0-Cloud",0-Cloud,0-Cloud,/,"Rstudio, automatic redirection to servers worldwide","winston # ",1,us,"secure_mirror_from_master" "China (Beijing 2)",China,Bejing,/cran/,"Beijing Jiaotong University, Beijing","idealities # ",1,cn"China (Beijing 3)",China,Beijing,/cran/,"Chinese Academy of Sciences, Beijing","admin # ",1,cn"China (Beijing 4) [https]",China,Beijing,https:///CRAN/,"TUNA Team, Tsinghua University","Justin Wong <justin.w.xd # >",1,cn "China (Beijing 4)",China,Beijing,/CRAN/,"TUNA Team, Tsinghua University","Justin Wong <justin.w.xd # >",1,cn"China (Hefei) [https]",China,Hefei,https:///CRAN/,"University of Science and Technology of China","mirrors # ",0,cn"China (Hefei)",China,Hefei,/CRAN/,"University of Science and Technology of China","mirrors # ",0,cn"China (Xiamen)",China,Xiamen,/CRAN/,"Xiamen University","admin # ",1,cn,"maintainer_address_bounces"# R包安装相关install.packages()# 如:install.packages("mypackage",repos="/CRAN/")# R包⽹址下载https:///web/packages/packages/index.htmlhttps:///web/packages/sp/index.htmlhttps:///src/contrib/RCurl_1.95-4.8.tar.gzR环境和包操作相关命令查询⽤户HOME地址Sys.getenv("HOME")查询R HOME安装地址Sys.getenv("R_HOME")查看包的安装⽬录\设置包的安装⽬录.libPaths() \ .libPaths('path')查看已经安装的包⽬录library()载⼊mypackage包\删除载⼊的包library(mypackage)require(dplyr)detach(dplyr) 包的载⼊library()或require(),安装完包后,需要加载才能使⽤其中的函数,此时括号中不使⽤引号。
Turbo Debugger参考手册
Window┃Close
关闭当前窗口
Alt-F4
Run┃Back Trace
反向执行程序
Alt-F5
Window┃User Screen
显示用户程序屏幕
Alt-F6
Window ┃Undo Close
重新打开刚被关闭的窗口
Alt-F7
Run┃Instruction Trace
执行单条指令
Alt-F8
Help┃Previous Topic
功能 联机帮助 在光标处设断点 模块选择列表 运行到光标位置 放大/缩小当前窗口 到下一个窗口 执行单行源代码或单条指令 执行单行源代码或单条指令 运行程序 激活或退出菜单条 显示上次的帮助屏幕
Alt-F2
Breakpoints┃At
在一地址处设置断点
Alt-F3
<<Turbo Debugger命令一览表>>
这里归纳了所有 Turbo Debugger 命令,相当于一个速查手册,其内容包括: z 各种功能的单键命令和其它键 z 所有主菜单的命令和每一窗口类型下的局部菜单命令 z 在输入文本的提示区和进行选择项的选择区中的命令 z 移动和改变窗口大小的命令
1. 热键(Hot keys) 所谓热键,是在 Turbo Debugger 环境中的任何地方一旦使用,就能执行其固有功能键。表1 列出了 Turbo Debuggeer 的所有 热键。
3.2 CPU窗口的菜单(CPU Window menus) CPU窗口有五个区(TDW中有六个区):代码区 数据区 堆栈区 寄存器区和标志区( TDW 还有一个选择符区)代码区局部菜单(Code Pane) Goto 显示新地址处的代码 Origin 显示CS:IP处的代码 Follow 显示JMP或CALL目标处的代码 Caller 显示调用函数的代码 Previous 显示上一地址处的代码 Search 搜索一指令或字节 View Source 转到模块窗口 Mixed 反汇编和源代码的混合显示方式:NO/YES/BOTH New CS:IP 设置新的CS:IP Assemble 汇编光标处的指令 I/O In Byte 从I/O口读一字节 Out Byte 写一字节到I/O口 Read Word 从I/O口读一字 Write Word 写一字到I/O口 Selector Pane 选择区局部菜单 Selector 键入查看的新选择符 Examine 根据数据内容在代码区或数据区显示选择符引的内存区域的内容。
R语言——精选推荐
R语⾔⼀、R包与命令㈠、R语⾔的获取帮助命令1、help.start() 打开帮助⽂档2、help("plot")或者help(plot)或者?plot 查看plot函数的帮助(引号可以省略)3、help.search('plot')或者??plot 以plot为关键字搜索本地帮助⽂档4、example("plot")或者example(plot) plot函数的使⽤实例(引号可以省略)5、RSiteSearch("plot") 以plot为关键词搜索在线⽂档和邮件列表存档6、apropos("plot",mode="function") 列出名称中含有plot的所有可⽤函数7、data() 列出当前已加载包中所含的所有可⽤⽰例数据集8、vignette() 列出当前已经安装的包中所有可能的vignette⽂档9、vignette("plot") 为主题plot显⽰指定的vignette⽂档㈡、R的⼯作空间管理命令1、getwd() 显⽰当前的⼯作⽬录2、setwd("new_path") 修改当前的⼯作⽬录为new_path3、Is() 列出当前⼯作空间中的对象4、rm(objectList) 移除(删除)⼀个或多个对象5、 rm(list=Is()) 移除当前⼯作空间的所有对象,即清除R⼯作空间中的内存变量6、help(options) 显⽰可⽤选项的说明7、options() 显⽰或设置当前选项8、history(n) 显⽰最近使⽤过的n个命令(默认值为25)9、savehistory("myfile") 保存命令历史⽂件到myfile中(默认值为.Rhistory)10、loadhistory() 载⼊⼀个命令历史⽂件(默认值为.Rhistory)11、save.image("myfile") 保存⼯作空间到⽂件myfile中(默认值为.RData)12、save(objectlist,file="myfile") 保存指定对象到⼀个⽂件中13、load("myfile") 读取⼀个⼯作空间到当前回话中(默认值为.RData)14、q() 退出R,并会询问是否保存⼯作空间㈢、安装与加载R包可以通过install.packages函数来下载和安装包,然后通过library函数加载相应的包分类与预测1、nnet函数需要加载BP神经⽹络nnet包2、randomForest函数需要加载随机森林randomForest包3、svm函数需要加载e1071包4、tree函数需要加载CRAT决策树tree包等㈣、聚类分析1、hclust函数、kmeans函数在stats包中关联规则1、apriori函数需要加载arules包时间序列1、arima函数需要加载forecast、tseries包⼆、数据结构㈠、查看数据类型1、查看对象类型typeof(x)class(x)mode(x)2、数据类型的判别和转换数据类型判别函数转换函数numeric is.numeric as.numericlogical is.logical as.logical character is.character as.character integer is.integer as.integer complex plex plex double is.double as.double ㈡、判断数据结构1、向量(vector)⒈1、向量创建⑴、直接创建向量⑵、c函数创建向量⑶、seq函数创建等差序列的向量⑷、rep函数创建重复序列⒈2、向量索引⑴、下标索引⑵、逻辑索引⑶、名称索引⑷、which函数索引⑸、subset函数索引⑹、match函数索引⒈3、向量编辑⑴、向量扩展⑵、改变元素的值⑶、删除元素⒈4、向量排序sort(x,decreasing=FALSE,st=NA,…) rev函数将向量倒序2、矩阵(matrix)⒉1、创建矩阵matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)⑴、创建对⾓矩阵⑵、创建单位矩阵⒉2、矩阵索引⑴、根据位置索引⑵、根据⾏和列的名称索引⑶、使⽤⼀维下标索引⑷、使⽤数值型向量索引⒉3、矩阵编辑⒉4、矩阵运算3、数组(Array)⒊1、创建数组array(data=NA,dim=length(data),dimnames=NULL)⒊2、数组索引4、数据框(data.frame)⒋1、创建数据框⒋2、数据框索引⑴、列索引⑵、⾏索引⑶、元素索引⑷、subset函数索引⑸、sqldf函数索引⒋3、数据框编辑5、列表(list)⒌1、创建列表⒌2、列表索引⒌3、列表编辑、数据结构的判别与转换数据结构判别函数转换函数向量 is.vector 视具体情况⽽定矩阵 is.matrix as.matrix数组 is.array as.array数据框 is.data.frame as.data.frame列表 is.list as.list三、数据集基本处理1、重命名变量⑴、利⽤交互式编辑器修改变量名⑵、使⽤rename函数修改变量名(数据框、列表)⑶、使⽤names函数修改变量名(数据框、列表)⑷、使⽤rownames函数与colnames函数修改变量名(数据框、矩阵)2、数据排序⑴、sort函数⑵、rank函数⑶、order函数3、合并数据集rbind和cbind4、选取变量及数据⑴、使⽤subset函数选取数据⑵、随机抽样①、srswr函数(不放回)②、srswor函数(有放回)③、sample函数(放回、不放回)5、重塑数据⑴、merge函数(合并数据框)⑵、melt函数(数据融合)6、字符串处理函数⑴、grep函数返回值为下标⑵、sub函数⑶、gsub函数⑷、strsplit函数⑸、paste函数连接字符串四、函数与控制流1、if–else结构2、ifelse结构3、switch分⽀语句4、for循环语句5、while循环语句6、编写⾃定义函数五、绘图1、绘制基础图形⑴、直⽅图(Histogram)⑵、条形图(Bar Chart)⑶、饼图(Pie Graph)⑷、箱线图(Boxplot)2、分析数据间的关系⑴、散点图(ScatterDiagram)⑵、散点矩阵图((Matrix of Scatter Plots))3、多变量相关矩阵图4、绘制其他图形⑴、核密度图⑵、⼩提琴图⑶、QQ图⑷、星状图5、修改图形参数⑴、修改颜⾊①、固定颜⾊选择函数②、渐变⾊⽣成函数⑵、修改点符号与线条①、点样式②、线条样式⑶、修改⽂本属性⑷、设置坐标轴⑸、添加图例6、绘制组合图形⑴、par函数⑵、layout函数六、⾼级绘图1、lattice报绘图2、ggplot2包绘图七、可视化数据挖掘⼯具Rattle。
最全面的R软件画图—所有的函数和指令说明
最全面的R软件画图—所有的函数和指令说明R软件画图—所有的函数和指令详细介绍1、abline {graphics}这个函数是在现有的表格中增一条或多条直线abline(a = NULL, b = NULL, h = NULL, v = NULL, reg = NULL, coef = NULL, untf = FALSE, ...)a, b the intercept (截距)and slope, single values.untf logical asking whether to untransform. See ‘Details’.h the y-value(s) for horizontal line(s).(水平线)是直线(0,h)v the x-value(s) for vertical line(s).(垂直线),是直线(v,0)coef a vector of length two giving the intercept(截距)and slope(斜率).Coef是一个二维的向量,其中直线的截距和斜率的,reg an object with a coef method. See ‘Details’.... graphica l parameters such as col, lty and lwd (possibly as vectors: see ‘Details’) and the line characteristics lend, ljoin and lmitre.abline(a, b, untf = FALSE, \dots)abline(h=, untf = FALSE, \dots)abline(v=, untf = FALSE, \dots)abline(coef=, untf = FALSE, \dots)abline(reg=, untf = FALSE, \dots)The first form specifies the line in intercept/slope form (alternatively a can be specified on its own and is taken to contain the slope and intercept in vector form).reg is a regression object with a coef method. If this returns a vector of length 1 then the value is taken to be the slope of a line through the origin, otherwise, the first 2 values are taken tobe the intercept and slope.If untf is true, and one or both axes(坐标轴)are log-transformed, then a curve is drawn corresponding to a line in original coordinates(坐标), otherwise a line is drawn in the transformed coordinate system(转变后的坐标系统). The h and v parameters always refer to original coordinates.The graphical(图解的,绘画的)parameters col, lty and lwd can be specified; see par for details. For the h= and v= usages they can be vectors of length greater than one, recycled as necessary. lines and segments for connected and arbitrary lines given by their endpoints. par.eg## Setup up coordinate system (with x==y aspect ratio):plot(c(-2,3), c(-1,5), type = "n", xlab="x", ylab="y", asp = 1) ## the x- and y-axis, and an integer gridabline(h=0, v=0, col = "gray60")text(1,0, "abline( h = 0 )", col = "gray60", adj = c(0, -.1))abline(h = -1:5, v = -2:3, col = "lightgray", lty=3)abline(a=1, b=2, col = 2)text(1,3, "abline( 1, 2 )", col=2, adj=c(-.1,-.1))## Simple Regression Lines:require(stats)sale5 <- c(6, 4, 9, 7, 6, 12, 8, 10, 9, 13)plot(sale5)abline(lsfit(1:10,sale5))abline(lsfit(1:10,sale5, intercept = FALSE), col= 4) # less fitting z <- lm(dist ~ speed, data = cars)plot(cars)abline(z) # equivalent to abline(reg = z) orabline(coef = coef(z))## trivial intercept modelabline(mC <- lm(dist ~ 1, data = cars)) ## the same asabline(a = coef(mC), b = 0, col = "blue")2、arrows {graphics}Draw arrows(箭头)between pairs of points.arrows(x0, y0, x1 = x0, y1 = y0, length = 0.25, angle = 30, code = 2,col = par("fg"), lty = par("lty"), lwd = par("lwd"), ...) x0, y0 coordinates of points from which to draw.x1, y1 coordinates of points to which to draw. At least one must the suppliedlength length of the edges of the arrow head (in inches).angle angle from the shaft(轴,箭杆)of the arrow to the edge of the arrow head.Code integer code, determining kind of arrows to be drawn.col, lty, lwd graphical parameters, possible vectors. NA values in col cause the arrow to be omitted.... graphical parameters such as xpd and the line characteristics lend, ljoin and lmitre: see par.For each i, an arrow is drawn between the point (x0[i], y0[i]) and the point (x1[i],y1[i]). The coordinate vectors will be recycled to the length of the longest.If code=1 an arrowhead is drawn at (x0[i],y0[i]) and if code=2 an arrowhead is drawn at (x1[i],y1[i]). If code=3 a head is drawn at both ends of the arrow. Unless length = 0, when no head is drawn. The graphical parameters col, lty and lwd can be vectors of length greater than one and will be recycled if necessary.The direction of a zero-length arrow is indeterminate, and hence so is the direction of the arrowheads. To allow for rounding error, arrowheads are omitted (with a warning) on any arrow of length less than 1/1000 inch.The first four arguments in the comparable S function are named x1,y1,x2,y2.x <- stats::runif(12); y <- stats::rnorm(12)i <- order(x,y); x <- x[i]; y <- y[i]#order returns a permutation(排列,置换)which rearranges(重新排列)its first argument into ascending or descending order, breaking ties by further arguments plot(x,y, main="arrows(.) and segments(.)")## draw arrows from point to point :s <- seq(length(x)-1)# one shorter than dataarrows(x[s], y[s], x[s+1], y[s+1], col= 1:3)s <- s[-length(s)]segments(x[s], y[s], x[s+2], y[s+2], col= 'pink')3、plot.window {graphics}This function sets up the world coordinate system for a graphics window. It is called by higher level functions such as plot.default (after plot.new).plot.window(xlim, ylim, log = "", asp = NA, ...)xlim, ylim numeric vectors of length 2, giving the x and y coordinates ranges.是二维的数值向量,给出x和y轴变化的范围,log character; indicating which axes should be in log scale.asp numeric, giving the aspect ratio y/x, see below.... further graphical parameters as in par. The relevant ones are xaxs, yaxs and lab.asp:If asp is a finite positive value then the window is set up so that one data unit in the x direction is equal in length to asp * one data unit in the y direction.Note that in this case, par("usr") is no longer determined by, e.g., par("xaxs"), but rather by asp and the device's aspect ratio.(See what happens if you interactively resize the plot device after running the example below!)The special case asp == 1 produces plots where distances between points are represented accurately on screen.Values with asp > 1 can be used to produce more accurate maps when using latitude and longitude. To reverse an axis, use xlim or ylim of the form c(hi, lo).The function attempts to produce a plausible set of scales if one or both of xlim and ylim is of length one or the two values given are identical, but it is better to avoid that case. Usually, one should rather use the higher level functions such as plot, hist, image, ..., instead and refer to their help pages for explanation of the arguments. A side-effect of the call is to set up the usr, xaxp and yaxp graphical parameters. (It is for the latter two that lab is used.)##--- An example for the use of 'asp' :require(stats) # normally loadedloc <- cmdscale(eurodist)rx <- range(x <- loc[,1])ry <- range(y <- -loc[,2])plot(x, y, type="n", asp=1, xlab="", ylab="")abline(h = pretty(rx, 10), v = pretty(ry, 10), col = "lightgray") text(x, y, labels(eurodist), cex=0.8)assocplot {graphics}Produce a Cohen-Friendly association plot indicating deviations from independence of rows and columns in a 2-dimensional contingency table.assocplot(x, col = c("black", "red"), space = 0.3,main = NULL, xlab = NULL, ylab = NULL)x a two-dimensional contingency table in matrix form.(是2维的列联表)col a character vector of length two giving the colors used for drawing positive and negative Pearson residuals, respectively.space the amount of space (as a fraction of the average rectangle width and height) left between each rectangle(矩形).main overall title for the plot.xlab a label for the x axis. Defaults to the name (if any) of the row dimension in x.ylab a label for the y axis. Defaults to the name (if any) of the column dimension in x.For a two-way contingency table, the signed contribution to Pearson's chi^2 for cell i, j is d_{ij} = (f_{ij} - e_{ij}) / sqrt(e_{ij}), where f_{ij} and e_{ij} are the observed and expected counts corresponding to the cell.In the Cohen-Friendly association plot, each cell is represented by a rectangle that has (signed) height proportional to d_{ij} and width proportional to sqrt(e_{ij}), so that the area of the box is proportional to the difference in observed and expected frequencies. The rectangles in each row are positioned relative to a baseline indicating independence (d_{ij} = 0). If the observed frequency of a cell is greater than the expected one, the box rises above the baseline and is shaded in the color specified by the first element of col, which defaults to black; otherwise, the box falls below the baseline and is shaded in the color specified by the second element of col, which defaults to red.A more flexible and extensible implementation of association plots written in the grid graphics system is provided in the function assoc in the contributed package vcd (Meyer, Zeileis and Hornik, 2005).## Aggregate over sex:x <- margin.table(HairEyeColor, c(1, 2))xassocplot(x, main = "Relation between hair and eye color") Axis {graphics} 、Generic(一般的)function to add a suitable axis to the current plot.Axis(x = NULL, at = NULL, ..., side, labels = NULL)x an object which indicates the range over which an axis should be drawnat the points at which tick-marks (刻度线)are to be drawn.side an integer specifying which side of the plot the axis is to be drawn on. The axis is placed as follows: 1=below, 2=left, 3=above and 4=right.labels this can either be a logical value specifying whether (numerical) annotations are to be made at the tickmarks, or a character or expression vector of labels to be placed at the tickpoints. If this is specified as a character or expression vector, at should be supplied and they should be the same length.... Arguments to be passed to methods and perhaps then to axis.This is a generic function. It works in a slightly non-standard way: if x is supplied and non-NULL it dispatches on x, otherwise if at is supplied and non-NULL it dispatches on at, and the default action is to call axis, omitting argument x.The idea is that for plots for which either or both of the axes are numerical but with a special interpretation, the standard plotting functions (including boxplot, contour, coplot, filled.contour, pairs, plot.default, rug and stripchart) will set up user coordinates and Axis will be called to label themappropriately.There are "Date" and "POSIXt" methods which can pass an argument format on to the appropriate axis method (see axis.POSIXct).The numeric locations on the axis scale at which tick marks were drawn when the plot was first drawn (see ‘Details’).This function is usually invoked for its side effect, which is to add an axis to an already existing plot.axis {graphics}Adds an axis to the current plot, allowing the specification of the side, position, labels, and other options. (将一个坐标轴增加到现有图表)axis(side, at = NULL, labels = TRUE, tick = TRUE, line = NA, pos = NA, outer = FALSE, font = NA, lty = "solid",lwd = 1, lwd.ticks = lwd, col = NULL, col.ticks = NULL, hadj = NA, padj = NA, ...)side an integer specifying which side of the plot the axis is to be drawn on. The axis is placed as follows: 1=below, 2=left, 3=above and 4=right.at the points at which tick-marks are to be drawn. Non-finite (infinite, NaN or NA) values are omitted. By default (when NULL) tickmark locations are computed, see ‘Details’ below.labels this can either be a logical value specifying whether (numerical) annotations are to be made at the tickmarks, or a character or expression vector of labels to be placed at the tickpoints. (Other objects are coerced by as.graphicsAnnot.) If this is not logical, at should also be supplied and of the same length. If labels is of length zero after coercion, it has the same effect as supplying TRUE.tick a logical value specifying whether tickmarks and an axisline should be drawn.(是逻辑值,详细说明是否刻度线和轴心线是不是画)line the number of lines into the margin at which the axis line will be drawn, if not NA.(在坐标轴的边界上画直线数)pos the coordinate at which the axis line is to be drawn: if not NA this overrides the value of line. 在轴心线上的坐标标出:如果不是,outer a logical value indicating whether the axis should be drawn in the outer plot margin, rather than the standard plot margin.font font for text. Defaults to par("font").lty line type for both the axis line and the tick marks.(轴心线的类型)lwd, lwd.ticks line widths for the axis line and the tick marks. Zero or negative values will suppress the line or ticks. (轴线心的宽度,col, col.ticks colors for the axis line and the tick marks respectively. col = NULL means to use par("fg"), possibly specified inline, and col=NULL means to use whatever color col resolved to. hadj adjustment (see par("adj")) for all labels parallel (‘horizontal’) to the reading direction. If this is not a finite value, the default is used (centring for strings parallel to the axis, justification of the end nearest the axis otherwise).padj adjustment for each tick label perpendicular to the reading direction. For labels parallel to the axes,padj=0 means right or top alignment, andpadj=1 means left or bottom alignment. This can be a vector given a value for each string, and will be recycled as necessary.If padj is not a finite value (the default), the value of par("las") determines the adjustment. For strings plotted perpendicular tothe axis the default is to centre the string.... other graphical parameters may also be passed as arguments to this function, particularly, cex.axis, col.axis and font.axis for axis annotation, mgp and xaxp or yaxp for positioning, tck or tcl for tick mark length and direction, las for vertical/horizontal label orientation, or fg instead of col, and xpd for clipping. See par on these.Parameters xaxt (sides 1 and 3) and yaxt (sides 2 and 4) control if the axis is plotted at all.Note that lab will partial match to argument labels unless the latter is also supplied. (Since thedefault axes have already been set up by plot.window, lab will not be acted on by axis.)The axis line is drawn from the lowest to the highest value of at, but will be clipped at the plot region. By default, only ticks which are drawn from points within the plot region (up to a tolerance for rounding error) are plotted, but the ticks and their labels may well extend outside the plot region. Use xpd=TRUE or xpd=NA to allow axes to extend further.When at = NULL, pretty tick mark locations are computed internally (the same way axTicks(side) would) from par("xaxp") or "yaxp" and par("xlog") (or "ylog"). Note that these locations may change if an on-screen plot is resized (for example, if the plot argument asp (see plot.window) is set.)If labels is not specified, the numeric values supplied or calculated for at are converted to character strings as if they were a numeric vector printed by print.default(digits=7).The code tries hard not to draw overlapping tick labels, and so will omit labels where they would abut or overlap previously drawn labels. This can result in, for example, every other tickbeing labelled. (The ticks are drawn left to right or bottom to top, and space at least the size of an ‘m’ is left between labels.) If either line or pos is set, they (rather than par("mgp")[3]) determine the position of the axis line and tick marks, and the tick labels are placed par("mgp")[2] further lines into (or towards for pos) the margin.Several of the graphics parameters affect the way axes are drawn. The vertical (for sides 1 and 3) positions of the axis and the tick labels are controlled by mgp[2:3] and mex, the size and direction of the ticks is controlled by tck and tcl and the appearance of the tick labels by cex.axis, col.axis and font.axis with orientation controlled by las (but not srt, unlike S which uses srt if at is supplied and las if it is not). Note that adj is not supported and labels are always centered. See par for details. The numeric locations on the axis scale at which tick marks were drawn when the plot was first drawn (s ee ‘Details’). This function is usually invoked for its side effect, which is to add an axis to an already existing plot.require(stats) # for rnormplot(1:4, rnorm(4), axes = FALSE)axis(1, 1:4, LETTERS[1:4])axis(2)box() #- to make it look "as usual"plot(1:7, rnorm(7), main = "axis() examples",type = "s", xaxt = "n", frame = FALSE, col = "red")axis(1, 1:7, LETTERS[1:7], col.axis = "blue")# unusual options:axis(4, col = "violet", col.axis="dark violet", lwd = 2)axis(3, col = "gold", lty = 2, lwd = 0.5)# one way to have a custom x axisplot(1:10, xaxt = "n")axis(1, xaxp=c(2, 9, 7))axis.POSIXct {graphics}Functions to plot objects of classes "POSIXlt", "POSIXct" and "Date" representing calendar dates and times.axis.POSIXct(side, x, at, format, labels = TRUE, ...)axis.Date(side, x, at, format, labels = TRUE, ...)x, at A date-time or date object.side See axis.format See strptime.labels Either a logical value specifying whether annotations are to be made at the tickmarks, or a vector of character strings to be placed at the tickpoints.... Further arguments to be passed from or to other methods, typically graphical parameters. axis.POSIXct and axis.Date work quite hard to choose suitable time units (years, months, days, hours, minutes or seconds) and a sensible output format, but this can be overridden by supplying a format specification. If at is supplied it specifies the locations of the ticks and labels whereas if x is specified a suitable grid of labels is chosen. Printing of tick labels can be suppressed by using labels = FALSE. The date-times for a "POSIXct" input are interpreted in the timezone give by the "tzone" attribute if there is one, otherwise the current timezone. The way the date-times are rendered (especially month names) is controlled by the locale setting of category "LC_TIME" (see Sys.setlocale. )The locations on the axis scale at which tick marks were drawn. These functions are the workhorse for methods for Axis. Prior to R 2.12.0 there were also plot methods for the date-time classes, but the default method has also handled those for a long time.Exampleswith(beaver1, {time <- strptime(paste(1990, day, time %/% 100, time %% 100), "%Y %j %H %M")plot(time, temp, type="l") # axis at 4-hour intervals.# now label every hour on the time axisplot(time, temp, type="l", xaxt="n")r <- as.POSIXct(round(range(time), "hours"))axis.POSIXct(1, at=seq(r[1], r[2], by="hour"), format="%H") })plot(.leap.seconds, seq_along(.leap.seconds), type="n", yaxt="n",xlab="leap seconds", ylab="", bty="n")rug(.leap.seconds)## or as dateslps <- as.Date(.leap.seconds)plot(lps, seq_along(.leap.seconds),type = "n", yaxt = "n", xlab = "leap seconds",ylab = "", bty = "n")rug(lps)## 100 random dates in a 10-week periodrandom.dates <- as.Date("2001/1/1") + 70*sort(stats::runif(100))plot(random.dates, 1:100)# or for a better axis labellingplot(random.dates, 1:100, xaxt="n")axis.Date(1, at=seq(as.Date("2001/1/1"), max(random.dates)+6, "weeks"))axis.Date(1, at=seq(as.Date("2001/1/1"), max(random.dates)+6, "days"),labels = FALSE, tcl = -0.2) axTicks{graphics}Compute pretty tickmark locations, the same way as R does internally. This is only non-trivial when log coordinates are active. By default, gives the at values which axis(side) would use.axTicks(side, axp = NULL, usr = NULL, log = NULL)side integer in 1:4, as for axis.axp numeric vector of length three, defaulting to par("xaxp") or par("yaxp") depending on the side argument.usr numeric vector of length four, defaulting to par("usr") giving horizontal (‘x’) and vertical (‘y’) user coordinate limits.log logical indicating if log coordinates are active; defaults to par("xlog") or par("ylog").The axp, usr, and log arguments must be consistent as their default values (the par(..) results) are. If you specify all three (as non-NULL), the graphics environment is not used at all. Note that the meaning of axp alters very much when log is TRUE, see the documentation on par(xaxp=.). axTicks() can be regarded as an R implementation of the C function CreateAtVector() in ‘..../src/main/plot.c’ which is called by axis(side,*) when no argument at is specified.numeric vector of coordinate values at which axis tickmarks can be drawn. By default, when only the first argument is specified, these values should be identical to those that axis(side) would use or has used.Examplesplot(1:7, 10*21:27)axTicks(1)axTicks(2)stopifnot(identical(axTicks(1), axTicks(3)),identical(axTicks(2), axTicks(4)))## Show how axTicks() and axis() correspond :op <- par(mfrow = c(3,1))for(x in 9999*c(1,2,8)) {plot(x,9, log = "x")cat(formatC(par("xaxp"), width=5),";", T <- axTicks(1),"\n")rug(T, col="red")}par(op)barplot {graphics}Creates a bar plot with vertical or horizontal bars.barplot(height, ...)## Default S3 method:barplot(height, width = 1, space = NULL,names.arg = NULL, legend.text = NULL, beside = FALSE,horiz = FALSE, density = NULL, angle = 45,col = NULL, border = par("fg"),main = NULL, sub = NULL, xlab = NULL, ylab = NULL,xlim = NULL, ylim = NULL, xpd = TRUE, log = "",axes = TRUE, axisnames = TRUE,cex.axis = par("cex.axis"), /doc/f62803304.html,s = par("cex.axis"), inside = TRUE, plot = TRUE, axis.lty = 0, offset = 0,add = FALSE, args.legend = NULL, ...)height either a vector or matrix of values describing the bars which make up the plot. If height is a vector, the plot consists of a sequence of rectangular bars with heights given by the values in the vector. If height is a matrix and beside is FALSE then each bar of the plot corresponds to a column of height, with the values in the column giving the heights of stacked sub-bars making upthe bar. If height is a matrix and beside is TRUE, then the values in each column are juxtaposed rather than stacked.width optional vector of bar widths. Re-cycled to length the number of bars drawn. Specifying a single value will have no visible effect unless xlim is specified.space the amount of space (as a fraction of the average bar width) left before each bar. May be given as a single number or one number per bar. If height is a matrix and beside is TRUE, space may be specified by two numbers, where the first is the space between bars in the same group, and the second the space between the groups. If not given explicitly, it defaults to c(0,1) if height is a matrix and beside is TRUE, and to 0.2 otherwise.names.arg a vector of names to be plotted below each bar or group of bars. If this argument is omitted, then the names are taken from the names attribute of height if this is a vector, or the column names if it is a matrix.legend.text a vector of text used to construct a legend for the plot, or a logical indicating whether a legend should be included. This is only useful when height is a matrix. In that case given legend labels should correspond to the rows of height; if legend.text is true, the row names of height will be used as labels if they are non-null.beside a logical value. If FALSE, the columns of height are portrayed as stacked bars, and if TRUE the columns are portrayed as juxtaposed bars.horiz a logical value. If FALSE, the bars are drawn vertically with the first bar to the left. If TRUE, the bars are drawn horizontally with the first at the bottom.density a vector giving the density of shading lines, in lines per inch, for the bars or bar components. The default value ofNULL means that no shading lines are drawn. Non-positive values of density also inhibit the drawing of shading lines.angle the slope of shading lines, given as an angle in degrees (counter-clockwise), for the bars or bar components.col a vector of colors for the bars or bar components. By default, grey is used if height is a vector, and a gamma-corrected grey palette if height is a matrix.border the color to be used for the border of the bars. Use border = NA to omit borders. If there are shading lines, border = TRUE means use the same colour for the border as for the shading lines. main,sub overall and sub title for the plot.xlab a label for the x axis.ylab a label for the y axis.xlim limits for the x axis.ylim limits for the y axis.xpd logical. Should bars be allowed to go outside region?log string specifying if axis scales should be logarithmic; see plot.default.axes logical. If TRUE, a vertical (or horizontal, if horiz is true) axis is drawn.axisnames logical. If TRUE, and if there are names.arg (see above), the other axis is drawn (with lty=0) and labeled.cex.axis expansion factor for numeric axis labels./doc/f62803304.html,s expansion factor for axis names (bar labels).inside logical. If TRUE, the lines which divide adjacent (non-stacked!) bars will be drawn. Only applies when space = 0 (which it partly is when beside = TRUE).plot logical. If FALSE, nothing is plotted.axis.lty the graphics parameter lty applied to the axis and tickmarks of the categorical (default horizontal) axis. Note that by default the axis is suppressed.offset a vector indicating how much the bars should be shifted relative to the x axis.add logical specifying if bars should be added to an already existing plot; defaults to FALSE. args.legend list of additional arguments to pass to legend(); names of the list are used as argument names. Only used if legend.text is supplied.... arguments to be passed to/from other methods. For the default method these can include further arguments (such as axes, asp and main) and graphical parameters (see par) which are passed to plot.window(), title() and axis.This is a generic function, it currently only has a default method. A formula interface may be added eventually.A numeric vector (or matrix, when beside = TRUE), say mp, giving the coordinates of all the bar midpoints drawn, useful for adding to the graph.If beside is true, use colMeans(mp) for the midpoints of each group of bars, see example. require(grDevices) # for colours tN <- table(Ni <- stats::rpois(100, lambda=5))r <- barplot(tN, col=rainbow(20))#- type = "h" plotting *is* 'bar'plotlines(r, tN, type='h', col='red', lwd=2)barplot(tN, space = 1.5, axisnames=FALSE,sub = "barplot(..., space= 1.5, axisnames = FALSE)")barplot(VADeaths, plot = FALSE)barplot(VADeaths, plot = FALSE, beside = TRUE)mp <- barplot(VADeaths) # defaulttot <- colMeans(VADeaths)text(mp, tot + 3, format(tot), xpd = TRUE, col = "blue")barplot(VADeaths, beside = TRUE,col = c("lightblue", "mistyrose", "lightcyan","lavender", "cornsilk"),legend = rownames(VADeaths), ylim = c(0, 100))title(main = "Death Rates in Virginia", font.main = 4)hh <- t(VADeaths)[, 5:1]mybarcol <- "gray20"mp <- barplot(hh, beside = TRUE,col = c("lightblue", "mistyrose","lightcyan", "lavender"),legend = colnames(VADeaths), ylim= c(0,100),main = "Death Rates in Virginia", font.main = 4,sub = "Faked upper 2*sigma error bars", col.sub = mybarcol, /doc/f62803304.html,s = 1.5)segments(mp, hh, mp, hh + 2*sqrt(1000*hh/100), col = mybarcol, lwd = 1.5)stopifnot(dim(mp) == dim(hh))# corresponding matricesmtext(side = 1, at = colMeans(mp), line = -2,text = paste("Mean", formatC(colMeans(hh))), col = "red")# Bar shading examplebarplot(VADeaths, angle = 15+10*1:5, density = 20, col = "black",legend = rownames(VADeaths))title(main = list("Death Rates in Virginia", font = 4))# border :barplot(VADeaths, border = "dark blue")# log scales (not much sense here):barplot(tN, col=heat.colors(12), log = "y")barplot(tN, col=gray.colors(20), log = "xy")# args.legend。
R命令速查手册
%*% 矩阵的代数积
rbind(A,B) 按行合并矩阵 cbind(A,B) 按列合并矩阵
apply(X, MARGIN=, FUN=)对 X 按 MARGIN 采取 FUN 运算,MARGIN=1 按列,=2 按行
sweep(X,MARGIN,STATS,FUN)对 X 按 MARGIN 采取 FUN 计算 STATS,并从 X 中除去
-4-
16 ts.plot(x)
作 x 的时间序列曲线,x 多元时须有相同的频率
17 hist(x,pr方图
18 barplot(x)
x 的条形图
19 qqnorm(x)
正态分位数-分位数图
20 qqplot(x,y)
y 对 x 的分位数-分位数图
21 contour(x,y,z)
9 matplot(x,y) 10 dotchart(x) 11 fourfoldplot(x) 12 assocplot(x)
13 mosaicplot(x) 14 pairs(x) 15 plot.ts(x)
解释 以序号为横坐标,以 x 的元素值为纵坐标绘图
以 x 为横 y 为纵坐标绘图 type="p" for points, "l" for lines, "b" for both, "c" for the lines part alone of "b", "o" for both „overplotted‟, "h" for „histogram‟ like (or „high-density‟) vertical lines, "s" for stair steps, "S" for other steps, see „Details‟ below, "n" for no plotting
R语言常见命令
R语⾔常见命令1. 获取帮助> help.start() 开启帮助⽂档>help(solve) 显⽰某命令的帮助信息,或者>?solve对于由特殊字符指定的功能,这些参数必须⽤单引号或双引号括起来,使之成为⼀个“字符串”,如> help("[[")与某个主题相关的例⼦通常可以⽤下⾯的命令得到>example(topic)2. 命令简介R对⼤⼩写是敏感的;名称不能以数字开始;基本的命令由表达式或者赋值语句组成。
如果⼀个表达式被作为⼀条命令给出,它将被求值、打印⽽表达式的值并不被保存。
⼀个赋值语句同样对表达式求值之后把表达式的值传给⼀个变量,不过并不会⾃动的被打印出来;命令由分号(;)来分隔,或者另起新⾏;基本命令可以由花括号(f和g)合并为⼀组复合表达式;注释⼏乎可以被放在任何地⽅,只要是以井号( # )开始,到⾏末结束;如果⼀个命令在⾏莫仍没有结束,R将会给出⼀个不同的提⽰符,默认的是‘+’。
3. 命令⽂件的执⾏和输出转向到⽂件如果命令存储于⼀个外部⽂件中,⽐如⼯作⽬录work中的commands.R,他们可以随时在R的任务中被执⾏>source("commands.R")在Windows中Source也可以由File菜单执⾏。
函数sink,>sink("record.lis")将把所有后续的输出由终端转向⼀个外部⽂件,record.lis。
命令> sink()将把信息重新恢复到终端上。
4. 数据的保持与对象的清除R所创建、操作的实体是对象。
对象可以是变量、数组、字符串、函数以及由这些元素组成的其它结构;>objects()⽤来显⽰⽬前存储在R中的对象的名字。
⽽当前存储的所有对象的组合被称为workspace;清除对象可以使⽤rm命令:>rm(x, y, z, ink, junk, temp, foo, bar)所有在⼀个R任务中被创建的对象都可以在⽂件中被永久保存,并在其它的R任务中被使⽤。
R语言常见命令
之迟辟智美创作1. 获取帮手 > help.start() 开启帮手文档>help(solve) 显示某命令的帮手信息,或者>?solve对由特殊字符指定的功能,这些参数必需用单引号或双引号括起来,使之成为一个“字符串”,如> help("[[")与某个主题相关的例子通常可以用下面的命令获得> example(topic)2. 命令简介 R对年夜小写是敏感的;名称不能以数字开始;基本的命令由表达式或者赋值语句组成.如果一个表达式被作为一条命令给出,它将被求值、打印而表达式的值其实不被保管.一个赋值语句同样对表达式求值之后把表达式的值传给一个变量,不外其实不会自动的被打印出来;命令由分号(;)来分隔,或者另起新行;基本命令可以由花括号(f和g)合并为一组复合表达式;注释几乎可以被放在任何处所,只要是以井号( # )开始,到行末结束;如果一个命令在行莫仍没有结束,R将会给出一个分歧的提示符,默认的是‘+’.3. 命令文件的执行和输出转向到文件如果命令存储于一个外部文件中,比如工作目录work中的commands.R,他们可以随时在R的任务中被执行> source("commands.R")在Windows中Source也可以由File 菜单执行.函数sink,> sink("record.lis")将把所有后续的输出由终端转向一个外部文件,record.lis.命令> sink() 将把信息重新恢复到终端上.4. 数据的坚持与对象的清除R所创立、把持的实体是对象.对象可以是变量、数组、字符串、函数以及由这些元素组成的其它结构;> objects() 用来显示目前存储在R中的对象的名字.而以后存储的所有对象的组合被称为workspace;清除对象可以使用rm命令:> rm(x, y, z, ink, junk, temp, foo, bar)所有在一个R任务中被创立的对象都可以在文件中被永久保管,并在其它的R任务中被使用.在每个R任务结束时用户都有机会保管以后有效的所有对象.如果用户这样做的话,对象将被写入以后目录一个名为.RData.当R被再次启动时R会从这个文件中再载入workspace.同时相关的命令记录也被载入.所以,推荐年夜家在用R进行分歧的分析时分别使用分歧的工作目录.5. 基本数据结构6. 基本数据对象向量(vector), 见下节矩阵(matrix):更一般的说数组是向量在多维情况下的一般形式.事实上它们是可以被两个或更多的指标索引的向量,而且以特定的方式被打印出来.因子(factors) 提供了一种处置分类数据的更简介的方式.列表(list):是向量的一种一般形式,其实不需要保证其中的元素都是相同的类型,而且其中的元素经常是向量和列表自己.数据框(data frame):是一种与矩阵相似的结构,其中的列可以是分歧的数据类型.可以把数据框看作一种数据"矩阵",它的每行是一个观测单位,而且(可能)同时包括数值型和分类的变量.函数( function):能够在R的workspace中存储的对象.我们可以通过函数来扩展R的功能.二简单把持,数值与向量2.1 向量与赋值R对命名了的数据结构进行把持.最简单的数据结构是数字向量;如,> x < c(10.4, 5.6, 3.1, 6.4, 21.7) c()是创立函数,赋值运算符是'<',与函数assign()等价> assign("x", c(10.4, 5.6, 3.1, 6.4, 21.7)) 也可以写成:> c(10.4, 5.6, 3.1, 6.4, 21.7) > x如果一个表达式被看成一个完整的命令,它的值将被打印到终端但不被贮存.独自输入x则会将值打印出来.也可以打印倒数:> 1/x> y < c(x, 0, x) 也可以将向量作为元素.2.2 向量运算把持是依照向量中的元素一个一个进行的.同一个表达式中的向量其实不需要具有相同的长度.如果它们的长度分歧,表达式的结果是一个与表达式中最长向量有相同长度的向量.表达式中较短的向量会根据它的长度被重复使用若干次(纷歧定是整数次),直到与长度最长的向量相匹配.而常数很明显的将被不竭重复.如,> v < 2*x + y + 1经常使用运算有:+,,*,/,^(次方);log, exp, sin, cos, tan,sqrt等;max和min的作用是选出所给向量中最年夜的或最小的元素;range函数的值是一个长度为2的向量,即c(min(x),max(x)) length(x)返回了向量x中元素的个数,也就是x的长度. sum(x)给出了x中所有元素的总和;prod(x)给出x中所有元素的乘积;mean(x)和var(x),分别计算样本均值和样本方差,这两个函数分别相当于sum(x)/length(x),sum((xmean(x))^2)/(length(x) 1).如果var()的参数是一个n*p的矩阵,那么函数的值是一个p*p的样本协方差矩阵,认为每行是一个p 变量的样本向量.sort(x)返回一个与x具有相同长度的向量,其中的元素按招升序排列.还有其他更灵活的排序功能(拜会order()和sort.list()).pmax和pmin将返回一个与最长的向量长度相等的向量,向量中的元素由参数中所有向量在相应位置的最年夜值(最小值)组成;如果要使用复数,需要直接给出一个复数部份.因此sqrt(17)将会返回NaN(无效数值)和一个警告,而sqrt(17+0i)将依照复数进行运算.2.3 生成序列最简单的方法是用冒号‘:’,冒号具有最高运算优先级.例如1:30就是向量c(1,2,. . .,29,30).30:1构造一个递加序列.利用seq()函数构造序列:有五个参数,from, to, by, length, alongfrom, to可以不写参数名,seq(2,10)就相当于2:10.by指定步长,默认为1,如seq(5, 5, by=.2)即为c(5.0, 4.8, 4.6, ..., 4.6, 4.8, 5.0)length指定序列长度,如seq(length=51, from=5, by=.2),同即是seq(5, 5, by=.2)along=vector只能独自使用,发生一个“1:length(vector)”序列.类似的函数是rep(),这个函数可以用多种复杂的方法来复制一个对象.最简单的形式是> s5 < rep(x, times=5)2.4 逻辑向量TRUE, FALSE, 和NA(not available), 前两个可以简写为T和F,但T/F其实不是系统保管字,可以被用户覆盖,所以最好还是不要简写.逻辑向量是由条件给出的,如下列语句令temp成为一个与x长度相同,相应位置根据是否与条件相符而由TRUE或FALSE组成的向量:> temp < x > 13逻辑把持符包括<, <=, >, >=,完全相等==和不即是!=,与或非分别为&, |, !.在普通运算中,FALSE当作0而TRUE当作1.2.5 缺失值NA(not available): 一般来讲一个NA的任何把持都将返回NA.is.na(x)返回一个与x等长的逻辑向量,而且由相应位置的元素是否是NA来决定这个逻辑向量相应位置的元素是TRUE还是FALSE.x==NA是一个与x具有相同长度而其所有元素都是NA的向量.NaN(Not a Number): 由数值运算发生,如0/0, InfInf.is.na(x)对NA和NaN值都返回TRUE,is.nan(x)只对NaN值返回TRUE.2.6 字符向量字符串在输入时可以使用单引号(')或双以号("); 在打印时用双引号(有时不用引号).R使用与C语言风格基秘闻同的转义符, 所以输入\打印的也是\, 输入" 打印引号", n: 换行, t: tab, b: 回格.字符向量可以通过函数c()连接;paste()可以接受任意个参数,并从它们中逐个取出字符并连成字符串,形成的字符串的个数与参数中最长字符串的长度相同.如果参数中包括数字的话,数字将被强制转化为字符串.在默认情况下,参数中的各字符串是被一个空格分隔的,不外通过参数sep=string 用户可以把它更改为其他字符串,包括空字符串.例如:> labs < paste(c("X","Y"), 1:10, sep="") 使变量labs成为字符变量c("X1", "Y2", "X3", "Y4", "X5", "Y6", "X7", "Y8", "X9", "Y10")2.7 index vector数据集子集的选择与修改任何结果为一个向量的表达式都可以通过追加索引向量(index vector)来选择其中的子集.1 逻辑的向量.> y < x[!is.na(x)] 暗示将向量x中的非NA元素赋给y;> (x+1)[(!is.na(x)) & x>0] > z 暗示创立一个对象z,其中的元素由向量x+1中与x中的非缺失值和正数对应的向量组成.2. 正整数的向量> x[6] 是x的第六个元素> x[1:10] 选取了x的前10个元素(假设x的长度不小于10).> c("x","y")[rep(c(1,2,2,1), times=4)] 发生了一个字符向量,长度为16,由"x", "y", "y", "x"重复4次而组成.3. 负整数的向量> y < x[(1:5)] 暗示向量y取向量x前5个元素以外的元素.4. 字符串的向量只存在于拥有names属性并由它来区分向量中元素的向量.这种情况下一个由名称组成的子向量起到了和正整数的索引向量相同的效果.> fruit < c(5, 10, 1, 20)> names(fruit) < c("orange", "banana", "apple", "peach")> lunch < fruit[c("apple","orange")]子集的修改> x[is.na(x)] < 0 暗示将向量x中所以NA元素用0来取代> y[y < 0] < y[y < 0] 暗示将向量(y)中与向量y的负元素对应位置的元素赋值给向量y中与向量y负元素对应的元素.作用相当于:> y < abs(y)三对象,模式和属性3.1 固有属性:模式和长度对象是R所进行把持的实体,对象可以是向量、列表等,详见1.6.对象的模式包括numeri,ccomplex,character,logical,list,function,expression等.可以用mode(object)检查.对象的长度是对象的另一固有属性.可以用length(object)检查.attribute(object)可以检查更深入的属性.模式的转换在允许的情况下(年夜大都情况都是允许的),R可以完成各种模式的转换.例如:d<as.character(z),将数值向量z<(0:9)转化为字符向量c("0", "1", "2", ..., "9").as.integer(d)将d转化为数值向量.R中很多形式为as.something()的函数,可以完成从一个模式向另一个模式的转化,或者是令对象取得它以后模式不具有的某些属性.3.2 改变对象的长度> e < numeric() 发生一个numeric型的空向量e.character()等类似.此时长度为对象0.此时新添加一个元素会使e的长度自动调整.> e[3] < 17 令e为一个长度为3的向量(此时,该向量的前两个元素都是NA)缩短(截断)一个对象的长度,只需要一个赋值命令.因此,若alpha是一个长度为10的对象,下面的命令> alpha < alpha[2 * 1:5]3.3 属性的获取和设置函数attributes(object)将给出以后对象所具有的所有非基本属性(长度和模式属于基本属性)的一个列表.函数attr(object,name)可以被用来选取一个指定的属性.除为某些特殊的目的创立新属性这样特殊的环境下,这些函数很少被用到.当函数attr()用在赋值语句左侧时,既可以是将对象与一种新的属性关联,也可以是对原有属性的更改.例如> attr(z,"dim") < c(10,10) 另R将z作为一个10X10的矩阵看待.3.4 对象的类别对象的一个特别属性,类别,被用来指定对象在R编程中的风格.比如:如果对象类别"data.frame"则会以特定方式处置.unclass()可以去除对象的类别.summary()可以检核对象的基本信息(min, max, mean, etc.)四有序因子和无序因子因子是一种向量对象,它给自己的组件指定了一个离散的分类(分组),它的组件由其他等长的向量组成.R提供了有序因子和无序因子.通俗点说,因子就是将对象的值分成份歧的组(levels). 用函数factor()创立一个因子,levels顺次排列(字母序或数值序).例如province<c("四川","湖南","江苏","四川","四川","四川","湖南","江苏","湖南","江苏"),为province创立因子:> pf<factor(province) 创立province的因子pf> pf 打印出来[1] 四川湖南江苏四川四川四川湖南江苏湖南江苏Levels: 湖南江苏四川函数levels()可以用来观察因子中有几多分歧的levels.假如我们拥有这些省份考生的分数:> score<c(95,86,84,92,84,79,86,99,85,90)函数tappley()可以用来计算各省的平均分数,函数tapply()的作用是对它第一个参数的组件中所包括的每个组应用一个参数三指定的函数.> smeans<tapply(score,pf,mean)> smeans湖南江苏四川85.66667 91.00000 87.50000再例如,下面命令会给出各组的length> tapply(score,pf,length)湖南江苏四川 3 3 4函数ordered()可以创立有序因子> ordered(province)[1] 四川湖南江苏四川四川四川湖南江苏湖南江苏Levels: 湖南 < 江苏 < 四川五数组和矩阵5.1 数组数组可以看成一个由递增下标暗示的数据项的集合,例如数值.数组的生成如果一个向量需要在R中以数组的方式被处置,则必需含有一个维数向量作为它的dim属性.维度向量由dim()指定,例如,z是一个由1500个元素组成的向量.下面的赋值语句> dim(z) < c(3,5,100) 使它具有dim属性,而且将被看成一个3X5X100的数组进行处置. c(3,5,100) 就是他的维度向量.还可以用到像matrix()和array()这样的函数来赋值.比如> array(1:20, dim=c(4,5))> matrix(1:24, 3,4)数据向量中的值被赋给数组中的值时,将遵循与FORTRAN 相同的原则"主列顺序",即第一个下标变动的最快,最后的下标变动最慢.数组的运算数组可以在算数表达式中使用,结果也是一个数组,这个数组由数据向量逐个元素的运算后组成,通常介入运算的对象应当具有相同的dim属性.5.2 数组的索引和数组的子块数组中的单个元素可以通过下标来指定,下标由逗号分隔,写在括号内.我们可以通过在下标的位置给出一个索引向量来指定一个数组的子块,不外如果在任何一个索引位置上给出空的索引向量,则相当于选取了这个下标的全部范围.如a[2,,],a[,3,]等5.3 索引数组除索引向量,还可以使用索引数组来指定命组的某些元素. 例如:有4X5的数组a,若要获得a中的a[1,3], a[2,2] 和a[3,1]这三个元素,可以生成索引向量i,然后用a[i]获得它们.> a < array(1:20,dim=c(4,5)) # Generate a 4 by 5 array.> i < array(c(1:3,3:1),dim=c(3,2))> i[,1] [,2][1,] 1 3[2,] 2 2[3,] 3 1> a[i][1] 9 6 3> a[i] < 0 # 将这三个元素用0替换.5.4 向量,数组的混合运算表达式从左到右被扫描;介入运算的任意对象如果年夜小缺乏,都将被重复使用直到与其他介入运算的对象等长;当较短的向量和数组在运算中相遇时,所有的数组必需具有相同的dim属性,否则返回一个毛病;如果有任意介入运算的向量比介入运算的矩阵或数组长,将会发生毛病;如果数组结构正常声称,而且没有毛病或者强制转换被应用于向量上,那么获得的结果与介入运算的数组具有相同的dim属性.5.5 矩阵的运算构建分区矩阵:cbind()和rbind(),cbind()依照水平方向,或者说按列的方式将矩阵连接到一起.rbind()依照垂直的方向,或者说按行的方式将矩阵连接到一起.外积:把持符是%o%:> ab < a %o% b 或者> ab < outer(a, b, "*")其中的乘法把持可以由任意一个双变量的函数替代.广义转置:函数t(A),或aperm(A, c(2,1));获取行数/列数:nrow(A)和ncol(A)分别返回矩阵A的行数和列数.矩阵乘法:把持符为%*%;交叉乘积(cross product):crossprod(X,Y)同即是t(X) %*% y,crossprod(X)等价于crossprod(X, X);diag(v):如果v是向量,diag(v)返回一个由v的元素为对角元素的对角矩阵.如果v为矩阵,diag(v)返回一个由v主对角元素组成的向量.如果v只是一个数值,那么diag(v)是一个vXv的单位矩阵.特征值和特征向量:eigen(Sm).这个函数的结果是由名为values和vectors的两部份组成的列表.如果只是需要特征值:eigen(Sm)$values最小二乘拟合即QR分解:lsfit(), qr().强制转换为向量:as.vector(),或者直接c().解线性方程和求矩阵的逆,奇异值分解与行列式见;六列表和数据帧6.1 列表列表是由称作组件的有序对象集合构成的对象.组件的模式或类型纷歧定相同.形如Lst < list(name_1=object_1, . . ., name_m=object_m)的赋值将创立一个包括m个组件的列表,并根据参数中指定的名称为其命名.(其名称可以自由选取).如果它们的名称被省略,组件将只是被编号.例如:> Lst < list(name="Fred", wife="Mary",no.children=3,child.ages=c(4,7,9))所使用的组件是被复制到新的列表中的,对原始对象没有影响.组件总是被编号的,而且可以通过编号指定.Lst[[1]] 即为"Fred",也可以用 Lst$name,Lst[["name"]]指定.如果Lst[[4]]是一个有下标的数组,Lst[[4]][1]就是它的第一项.区分Lst[[1]]和Lst[1],'[[...]]'是选择单个元素时使用的把持符,而'[...]'是一个一般的下标把持符.因此,前者代表列表Lst中的第一个对象;后者是列表Lst的子列表,仅包括列表的第一项.组件的名称可以缩写,可缩写的水平是只要能令组件被唯一的识别就可以了.如:Lst$na等价于Lst$name, Lst$w等价于Lst$wife.扩展列表可以通过指定额外组件的方式.例如> Lst[5] < list(matrix=Mat)连接列表当连接函数c()的参数为列表时,其结果也是一个模式为列表的对象.由参数中的列表作为组件依次连接而成.> list.ABC < c(list.A, list.B, list.C)6.2 数据帧数据帧是类别为"data.frame"的列表;数据帧会被看成各列具有分歧模式和属性的矩阵.数据帧依照矩阵的方式显示,选取的行或列也依照矩阵的方式来索引.创立数据帧直接创立:那些满足对数据帧的列(组件)限制的对象可以通过函数data.frame来构建成为一个数据帧> t < data.frame(home=statef, loot=income, shot=incomef)强制转换:如果一个列表的组件与数据帧的限制一致,这个列表就可以通过函数as.data.frame()强制转化为一个数据帧.外部文件:创立数据帧最简单的方法应当是使用read.table()函数从外部文件中读取整个数据帧.数据帧和列表的限制1 组件必需是向量(数值型,字符形,逻辑型),因子,数值矩阵,列表,或其他数据帧;2 矩阵,列表,数据帧向新数据帧提供的变量数分别即是它们的列数,元素数和变量数;3 数值向量,逻辑值和因子在数据帧中坚持不变,字符向量将被强制转化为因子,其水平是字符向量中所呈现的值;4 数据帧中作为变量的向量结构必需具有相同的长度,而矩阵结构应当具有相同的行年夜小.挂接和卸载数据帧当觉得使用'$'引用数据帧元素(如't$home')麻烦时,可以进行数据帧挂接> attach(t) 这样可以直接引用数据帧内的元素,而无需'$',前提是数据帧外没有同名的变量(如name).挂接后若要对数据帧元素进行赋值把持,仍需用'$',否则视为赋值给数据帧外的元素.赋值后必需要先卸载(detach)再重新挂接后,新值才可见. > detach(t)attach()是具有一般性的函数,即它不单能够将目录和数据帧挂接在搜索路径上,还能挂接其他类另外对象.特别是模式为"list"的对象可以通过相同的方式挂接:> attach(any.old.list)任何被挂接的对象都可以用detach来卸载,通过指定位置编号或者指命名称这样的方式.搜索路径函数search()将显示目前的搜索路径,可以用来检查数据帧/列表的挂接状态.ls()(或objects())命令可以用来检查搜索路径任意位置上的内容.如:ls(), ls(2), ls(t)R可以在搜索路径中包括至多20个项目,列表和数据帧只能在位置2或更靠后的位置上挂接.数据帧使用惯例1 将每个自力的,适当界说的问题所包括的所有变量收入同一个数据帧中,并赋予合适的、易理解、易辨识的名称;2 处置问题时,当相应的数据帧挂接于位置2,同时在第1层工作目录下寄存把持的数值和临时变量;3 在结束一次工作之前,将你认为对将来有参考价值的变量通过$标识表记标帜的形式添加到数据帧里面,然后detach();4 最后,将工作目录下所有不需要的变量剔除,而且尽量将剩下过剩的临时变量都清除干净.这样我们可以很简单的在同一个目录下处置多个问题,而且对每个问题都可以使用x,y,z这样的变量名.七从文件中读取数据7.1 函数read.table()该函数可以直接将文件中完整的数据帧读入.此时文件要符合特定的格式:1 第一行应当提供数据帧中每个变量的名称;2 每一行(除变量名称行)应包括一个行标号和各变量的值.3 若没有表头(变量名称行),也没有行标号,只有变量值,则默认变量名称为"v1","v2"...4 若有表头,但没有行标号,则可以指定参数header=TRUE.7.2 函数scan()该函数从键盘或文件中读取数据,并存入向量或列表中.> inp < scan(file, what)第一个参数是文件名,如“test.txt”,若为“”或空,则从键盘读入数据;第二个参数用于确定读入数据的模式. 如:list("",0,0) 指定读入到列表中,列表有三项,且列表第一项是字符型,第二三项是数值型.若为0,则指定读入到一个数值向量中,若为“”则指定读入到字符向量中.7.3 内置数据集的读取R自己提供超越50个数据集,同时在功能包(包括标准功能包)中附带更多的数据集.与SPlus分歧,这些数据即必需通过data函数载入.> data() #获得基本系统提供的数据集列表,然后通过形如> data(infert) #来载入名为infert的数据集从其他package中载入数据集data(package="nls") #检查nls中数据集data(Puromycin, package="nls") #读取nls中Puromycin数据集.用library()挂接package后,它的数据集也自动包括到搜索路径中了.library(nls) #载入package nlsdata() #检查数据集date(Puromycin) #载入Puromycin数据集7.4 编纂数据在使用一个数据帧或矩阵时,edit提供一个自力的工作表式编纂环境.> xnew < edit(xold) #对数据集xold进行编纂.并在完成时将改动后的对象赋值给xnew> xnew < edit(data.frame()) #可以通过工作表界面录入新数据.fix()函数用于直接修改已有的对象,等价于 x<edit(x).八概率分布8.1 R是一个统计表集合(略读)R提供了一套完整的统计表集合.函数可以对累积分布函数P(X<=x),概率密度函数,分位函数(对给定的q,求满足P(X<=x) > q的最小x)求值,并根据分布进行模拟.对所给的名称,加前缀'd'代表密度(density),'p'代表CDF,'q'代表分位函数,'r'代表模拟(随即散布).这几类函数的第一个参数是有规律的,形为dxxx的函数为x,pxxx的函数为q,qxxx的函数为p,rxxx的函数为n(rhyper和rwilcox 是特例,他们的第一个参数为nn).目前为止,非中心参数(noncentrality parameter)仅对CDF和少数几个其他函数有效,细节请参考在线帮手.所有pxxx和qxxx的函数都具有逻辑参数lower.tail和log.p,而所有的dxxx函数都有参数log,这个是我们可以直接通过pxxx(t, ..., lower.tail = FALSE, log.p = TRUE)获取,比如说,累积失效函数(cumulative/integrated hazard function),H(t) =log(1F(t)),以及更精确的对数似然(通过dxxx(..., log = TRUE)).另外,对来自正态分布,具有学生化样本区间的分布还有ptukey和qtukey这样的函数.下面是一些例子> ## 2tailed pvalue for t distribution> 2*pt(2.43, df = 13)> ## upper 1% point for an F(2, 7) distribution> qf(0.99, 2, 7)8.2 检测数据集的分布函数summary和fivenum这两个函数可以给出摘要,后者只给出数值;函数stem可以将数值统计结果以类似直方图的方式显示出来;函数hist()可以绘制直方图;函数density和line可以获得更漂亮的密度图;功能包fun中的ecdf函数能绘制经验累积分布函数;还可以进行拟合正态分布,覆盖拟合CDF;还可以绘制Quantilequantile (QQ)图有助于我们更细致的检测其分布形态;8.3 单样本和两样本检验(略读)九语句组、循环和条件把持R是一种表达式语言,也就是说其命令类型只有函数或表达式,并由它们返回一个结果.语句组由花括号‘{ }’确定,此时结果是该组中最后一个能返回值的语句的结果.条件语句> if (expr_1) expr_2 else expr_3其中条件表达式expr1必需返回一个逻辑值,把持符&&和||经常被用于条件部份.&和|与&&,||的区别在于,&和|依照逐个元素的方式进行计算,&&和||对向量的第一个元素进行运算,只有在必需的时候才对第二个参数求值.if/else结构的向量版本是函数ifelse,其形式为ifelse (condition,a,b),发生函数结果的规则是:如果condition[i]为真,对应a[i]元素;反之对应的是b[i]元素.根据这个原则函数返回一个由a,b中相应元素组成的向量,向量长度与其最长的参数等长.循环语句> for (name in expr_1) expr_2其中name是循环变量,expr1是一个向量表达式(通常是1:20这样的序列),而expr2经常是一个表达式语句组,expr2随着name依次取expr1结果向量的值而被屡次重复运行.> repeat(expr)> while(condition) exprbreak语句可以用来中断任何循环,可能是非正常的中断.而且这是中止repeat循环的唯一方式.next语句可以中止一个特定的循环,跳至下一个.十编写自己的函数10.1 函数的界说> name < function(arg_1, arg_2, ...) expressionexpression是一个R表达式(通常是表达式语句组),并使用参数arg_i来计算出一个数值,表达式的值就是函数的返回值.函数调用的形式通常都是name(expr1,expr2,...)10.2 界说新的二元把持符可以将函数界说为新的二元把持符:> "%!%" < function(X, y) { ... }正如矩阵乘法运算符,%*%,和矩阵外积运算符%o%。
R命令参考卡片中文版
), ;
,
sample(x, size) replace = TRUE prop.table(x,margin=) margin ,
x margin 1
size
, ,
pmin(x,y,...) x[i], y[i] , pmax(x,y,...) . cumsum(x) x , x[i]=sum{ x[1]: x[i]} cumprod(x) . cummin(x) . cummax(x) . union(x,y) x ∪ y − x ∩ y intersect(x,y) x ∩ y setdiff(x,y) x − x ∩ y setequal(x,y) x, y ( x, y is.element(el,set) x %in% y Re(x) Im(x) Mod(x) ( ); abs(x) Arg(x) (in radians) Conj(x) x convolve(x,y) fft(x) (array) mvfft(x) filter(x,filter) na.rm=FALSE t(x) diag(x) %*% solve(a,b) a %*% x = b x solve(a) eigen(x) rowsum(x) ; rowSums(x) colsum(x), colSums(x) . rowMeans(x) colMeans(x) dist(x) x apply(X,INDEX,FUN=) , lapply(X,FUN) FUN tapply(X,INDEX,FUN=) FUN sapply lapply, by(data,INDEX,FUN) merge(a,b) xtabs(a b,data=x) aggregate(x,by,FUN) , stack(x, ...) unstack(x, ...) stack() reshape(x, ...) ‘wide’ ‘wide’ (direction=“long”) (INDEX) X x (INDEX) FUN
r语言查看函数用法(一)
R语言是一种用于数据分析和统计的编程语言,它提供了丰富的函数库来处理各种数据分析任务。
在使用R语言进行数据分析时,了解如何查看函数的用法是非常重要的。
本文将介绍一些常用的R语言函数查看方法,并对每种方法进行详细的讲解。
1. 使用help()函数help()函数是R语言中最基本的查看函数用法的方法之一。
可以使用help()函数来查看特定函数的用法。
例如,如果想要查看sum函数的用法,可以使用以下命令:```Rhelp(sum)```这将会在R的帮助窗口中显示sum函数的用法说明,包括函数的参数说明、返回值说明以及示例代码。
2. 使用?操作符在R语言中,还可以使用?操作符来查看函数的用法。
和help()函数类似,?操作符可以用来查看特定函数的用法。
例如,要查看sum函数的用法,可以使用以下命令:```R```这将会在R的帮助窗口中显示sum函数的用法说明,和help()函数的效果是一样的。
3. 使用args()函数args()函数可以用来查看函数的参数列表。
例如,如果要查看sum函数的参数列表,可以使用以下命令:```Rargs(sum)```这将会显示sum函数的参数列表,包括参数的名称、类型以及默认值。
4. 使用str()函数str()函数可以用来查看任意R对象的结构。
当需要查看函数的返回值结构时,可以使用str()函数来查看。
例如,如果要查看sum函数的返回值结构,可以使用以下命令:```Rstr(sum(1, 2, 3))这将会显示sum函数返回值的结构,包括返回值的类型、长度以及具体数值。
5. 使用example()函数example()函数可以用来查看函数的示例用法。
例如,如果要查看sum函数的示例用法,可以使用以下命令:```Rexample(sum)```这将会显示sum函数的示例用法,包括如何调用sum函数以及sum函数的返回值示例。
总结在本文中,我们介绍了几种常用的R语言函数查看方法,包括使用help()函数、?操作符、args()函数、str()函数和example()函数。
r语言grep提取列
r语言grep提取列使用R语言的grep函数可以方便地提取符合特定条件的字符串。
本文将介绍如何使用grep函数提取列为标题的方法,并结合实际案例进行说明。
我们需要明确grep函数的基本用法。
grep函数用于在一个字符向量中搜索符合特定模式的字符串,并返回匹配到的字符串的位置或者值。
其基本语法为:grep(pattern, x, ignore.case = FALSE, perl = FALSE, value = FALSE, fixed = FALSE, useBytes = FALSE, invert = FALSE)其中,pattern为要搜索的模式,x为要进行搜索的字符向量。
假设我们有一个包含多个标题的数据框,如下所示:```Rdata <- data.frame(标题 = c("这是一个标题", "这是另一个标题", "这是第三个标题", "这是第四个标题", "这是第五个标题"))```我们想要提取出所有的标题,即将data数据框的"标题"列作为一个字符向量进行处理。
下面是使用grep函数提取标题的代码:```Rtitles <- grep("标题", data$标题, value = TRUE)```上述代码中,我们将模式设置为"标题",即搜索包含"标题"的字符串。
通过设置value参数为TRUE,我们可以直接返回匹配到的字符串值,而不是位置。
将匹配到的标题保存在titles变量中。
接下来,我们可以打印出提取到的标题,以验证我们的代码是否正确:```Rprint(titles)```运行以上代码,我们将得到如下输出:```[1] "这是一个标题" "这是另一个标题" "这是第三个标题" "这是第四个标题" "这是第五个标题"```从输出中可以看出,我们成功地提取出了所有的标题。
r型指令和i型指令
r型指令和i型指令
R型指令是“寄存器指令”,其中包含操作码、源寄存器和目的寄存器等。
这种指令的操作数通常存储在寄存器中,操作码告诉处理器要执行哪种操作,源寄存器提供了操作数,而目的寄存器保存了结果。
R型指令通常用于执行算术或逻辑操作。
I型指令是“立即数指令”,其中包含操作码、源寄存器和立即数等。
这种指令的操作数通常是立即数,即在指令中直接给出的数据,操作码告诉处理器要执行哪种操作,源寄存器提供了操作数所需的地址信息。
I型指令通常用于执行数据传输或比较操作。
总的来说,R型指令更加灵活,可以执行更广泛的操作,但需要更多寄存器来存储操作数。
而I型指令则更加简单,只需要一个操作数和一个寄存器即可完成操作,但是其能够执行的操作有限。
在实际应用中,计算机通常会同时支持这两种指令格式,以便更好地适应各种不同的操作需求。
- 1 -。