Rlab漫浮号怎样?

《R语言实战》中文电子版链接:https://pan.baidu.com/s/1IS1Fe8JjnoG4-ahBwCTgxQ 提取码:lx35 已经学习打卡R语言22天了,可以说是初窥真容——基本了解R的数据和函数;作为程序语言,就是要多练习,多领悟,在实战中发现问题并解决问题。所以,就以《R语言实战》为基础,开始R语言实战学习,争取再过一个月,能够熟练掌握科研中所需的基本绘图代码和统计学计算,并且熟悉ggplot2包。同时,之后的所有运行代码都在R-script脚本文件中写,不直接在运行框中写加油!!!Day 1第一章
R语言的介绍R语句由函数和赋值组成。使用<- 作为赋值符号。#表示注释符号。#后出现的所有文本都会被R解释器忽略,因此在书写复杂逻辑时,可灵活利用#进行说明。获取帮助:help()或?***工作目录:getwd()获取当前工作目录;setwd(“ ”)设定当前工作目录。R包:包是R函数、数据、预编译代码以一种定义完善的格式组成的集合。计算机上存储包的目录称为库(library);函数 .libPaths( ) 能够显示库所在的位置,函数library( )则可以显示库中有哪些包。包的安装:install.packages("");加载包library( )。R将反斜杠\视作一个转义字符。批处理:想要以一种重复的、标准化的、无人值守的方式执行某个R程序。R可以处理GB级到TB级的数据分析问题,但需要专门的手段。将输出用为输入——结果的重用:将计算结果赋值给新的对象,之后就可以利用前一步的计算结果;如 lift<-lm(mpg~wt,data=mtcars)
summary(lift)Day 2第二章 创建数据集R分析前,需要根据个人需求的来创建含有数据的数据集,要求选择一种存储数据的数据结构,再将数据输入或导入到该数据结构中。2.1、数据集1、数据集通常是由数据构成的一个矩形数组,行表示观测,列表示变量。统计学家称它们为观测-observation和变量-variable,数据库分析师则称其为记录-record和字段-field,数据挖掘/机器学习学科的研究者则把它们叫做示例- example和属性-attribut e。在本书中通篇使用术语观测和变量。2、数据结构与数据类型R中存储数据的结构:包括标量、向量、数组、数据框和列表。R中数据类型:数值型、字符型、逻辑型(TRUE/FALSE)、复数型(虚数)和原生型(字节)。R将实例标识符称为rownames(行名),将类别型(包括名义型和有序型)变量称为因子( factors)。2.2 数据结构在R中,对象( object)是指可以赋值给变量的任何事物,包括常量、数据结构、函数,甚至图形。对象都拥有某种模式,描述了此对象是如何存储的,以及某个类,像print这样的泛型函数表明如何处理此对象。(1)向量向量是用于存储数值型、字符型或逻辑型数据的一维数组。函数c()可用来创建向量单个向量中的数据必须拥有相同的类型或模式(数值型、字符型或逻辑型)。注意:标量是只含一个元素的向量,例如f <- 3、 g <- "US"。它们用于保存常量。索引:a[c()](2)矩阵矩阵是一个二维数组,只是每个元素都拥有相同的模式-只能包含一种数据类型(数值型、字符型或逻辑型)。函数matrix()用来创建矩阵。索引:X[i,]指矩阵X中的第i行, X[,j]指第j列, X[i, j]指第i行第j个元素。选择多行或多列时,下标i 和j 可为数值型向量。(3)数组数组( array)与矩阵类似,但是维度可以大于2。函数array()用来创建数组。数组中的数据也只能拥有一种数据类型。索引:X[i,]指矩阵X中的第i行, X[,j]指第j列, X[i, j]指第i行第j个元素。选择多行或多列时,下标i 和j 可为数值型向量。(4)数据框数据框的不同的列可以包含不同模式(数值型、字符型等)的数据。数据框将是你在R中最常处理的数据结构。函数data.frame()用于创建数据框。索引:[]或$-被用来选取一个给定数据框中的某个特定变量。在每个变量名前都键入一次patientdata$可能会让人生厌,所以不妨走一些捷径。可以联合使用函数attach()和detach()或单独使用函数with()来简化代码。函数attach()可将数据框添加到R的搜索路径中;函数detach()将数据框从搜索路径中移除。实例标识符:实例标识符(case identifier)可通过数据框操作函数中的rowname选项指定。(5)因子(factor)类别(名义型)变量和有序类别(有序型)变量在R中称为因子( factor)。函数factor()以一个整数向量的形式存储类别值,整数的取值范围是[1... k ](其中k 是名义型变量中唯一值的个数),同时一个由字符串(原始值)组成的内部向量将映射到这些整数上。(6)列表列表就是一些对象(或成分,component)的有序集合。列表允许你整合若干(可能无关的)对象到单个对象名下。某个列表中可能是若干向量、矩阵、数据框,甚至其他列表的组合。函数list()用于创建列表。2.3 数据的输入(1)使用键盘输入数据:edit()函数(2)从带分隔符的文本文件导入数据:read.table()函数,读入为数据框格式(3)导入Excel数据:读入为数据框格式读取一个Excel文件的最好方式,就是在Excel中将其导出为一个逗号分隔文件( csv),再用read.csv()读入。xlsx包:函数read.xlsx()读入。(4)导入XML数据(5)从网页抓取数据(6)导入SPSS数据:SPSS数据集可以通过foreign包中的函数read.spss()导入到R中,也可以使用Hmisc包中的spss.get()函数。(7)导入SAS数据/导入Stata数据/导入netCDF数据/导入HDF5 数据/访问数据库管理系统/通过Stat/Transfer导入数据。2.4 数据集的标注通常这种标注包括为变量名添加描述性的标签,以及为类别型变量中的编码添加值标签。(1)变量标签(2)值标签2.5 处理数据对象的使用函数Day 3第三章
图形初阶可以应用于所有图形的通用方法:如何创建和保存图形,然后关注如何修改那些存在于所有图形中的特征,包括图形的标题、坐标轴、标签、颜色、线条、符号和文本标注。3.1 使用图形在R通常的交互式会话中,你可以通过逐条输入语句构建图形,逐渐完善图形特征,直至得到想要的效果。通过执行如plot()、 hist()(绘制直方图)或boxplot()这样的高级绘图命令来创建一幅新图形时,通常会覆盖掉先前的图形。可在图形窗口查看历史图形。3.2 举个栗子3.3 图形参数通过修改称为图形参数的选项来自定义一幅图形的多个特征(字体、颜色、坐标轴、标题)。修改图形参数方法1:函数par()——以这种方式设定的参数值除非被再次修改,否则将在会话结束前一直有效。添加参数no.readonly=TRUE可以生成一个可以修改的当前图形参数列表;(先设置参数,再绘制图形)opar<-par(no.readonly = T) #生成可以修改图形参数的列表
> par(pch=17)
#设置图形参数par()
> plot(cyl,wt)
#绘制图形修改图形参数方法2:高级绘图函数直接提供optionname=value的键值对。 这种情况下,指定的选项仅对这幅图形本身有效。(并不是所有的高级绘图函数都允许指定全部可能的图形参数)plot(dose, drugA,type="b",lty=2,pch=17)(1)符号和线条对于符号21~25,还可以指定边界颜色( col=)和填充色( bg=)选项lty=用于指定想要的线条类型(2)颜色在R中,可以通过颜色下标、颜色名称、十六进制的颜色值、 RGB值或HSV值来指定颜色。函数rgb()可基于红—绿—蓝三色值生成颜色,而hsv()则基于色相—饱和度—亮度值来生成颜色。函数colors()可以返回所有可用颜色的名称。R中也有多种用于创建连续型颜色向量的函数,包括rainbow()、 heat.colors()、terrain.colors()、 topo.colors()以及cm.colors()。多阶灰度色可使用gray()函数生成。(3)文本属性图形参数同样可以用来指定字号、字体和字样。字体:<1>在Windows系统中,等宽字体映射为TTCourier New,衬线字体映射为TT Times New Roman,无衬线字体则映射为TT Arial( TT代表TrueType)。par(family="TT Times New Roman")
#设置为衬线字体<2>创建新的映射:在Windows中,可以通过函数windowsFont()来创建这类映射。windowsFonts(A=windowsFont("Arial Black"),B=("Bookman Old Style"))
par(family="A") (4)图形尺寸与边界尺寸3.4
添加文本、自定义坐标轴和图例(1)标题title()函数为图形添加标题和坐标轴标签。title(main="main title",col.main="red",sub="My Sub-title",col.sub="blue"
,xlab="My X label",ylab="My Y label",col.lab="green",cex.lab=0.75)
#title()函数可以
设置如颜色、文本大小等图形参数。(2)坐标轴函数axis()来创建自定义的坐标轴,而非使用R中的默认坐标轴。创建自定义坐标轴时,你应当禁用高级绘图函数自动生成的坐标轴。参数axes=FALSE将禁用全部坐标轴(包括坐标轴框架线,除非你添加了参数frame.plot=TRUE)。参数xaxt="n"和yaxt="n"将分别禁用X轴或Y轴(会留下框架线,只是去除了刻度)。axis(side,at=,labels=,pos=,lty=,col=,las=,tck=,...)(3)参考线函数abline()可以用来为图形添加参考线。abline(h=yvalues,v=xvalues)函数abline()中也可以指定其他图形参数(如线条类型、颜色和宽度)。如:abline(h=c(1,5,7))
#在y的1/5/7位置添加了水平实线。
(4)图例当图形中包含的数据不止一组时,图例可以帮助你辨别出每个条形、扇形区域或折线各代表哪一类数据。函数legend()用来添加图例。其他常用的图例选项包括用于指定盒子样式的bty、指定背景色的bg、指定大小的cex,以及指定文本颜色的text.col。指定horiz=TRUE将会水平放置图例,而不是垂直放置。legend(location,title,legend,...)(5)文本标注通过函数text()和mtext()将文本添加到图形上。text()可向绘图区域内部添加文本;text()函数也通常用来标示图形中的点。mtext()则向图形的四个边界之一添加文本。其他常用的选项有cex、 col和font(分别用来调整字号、颜色和字体样式)text(location,"text to place",pos,...)
mtext("text to place",side,line=n,...)3.5 图形的组合在R中使用函数par()或layout()可以容易地组合多幅图形为一幅总括图形。在par()函数中使用图形参数mfrow=c(nrows, ncols)来创建按行填充的、行数为nrows、列数为ncols的图形矩阵。另外,可以使用nfcol=c(nrows, ncols)按列填充矩阵。栗子:
attach(mtcars)
opar<-par(no.readonly=T)
par(mfrow=c(2,2))
plot(wt,mpg,main="Scatterplot of wt vs. mpg")
plot(wt,disp,main="Scatterplot of wt vs disp")
hist(wt,main="Boxplot of wt")
boxplot(wt,main="Boxplot of wt")
par(opar)
detach(mtcars)
函数layout()的调用形式为layout(mat),其中的mat是一个矩阵,它指定了所要组合的多个图形的所在位置。为了更精确地控制每幅图形的大小,可以有选择地在layout()函数中使用widths=和heights=两个参数;widths = 各列宽度值组成的一个向量;heights = 各行高度值组成的一个向量。参考help(layout)以了解更多细节。attach(mtcars)
layout(matrix(c(1,1,2,3),2,2,byrow=T),widths=c(3,1),heights=c(1,2))
hist(wt)
hist(mpg)
hist(disp)
detachDay 4 第四章
基本数据管理4.1 示例4.2 创建新变量transform()函数:为原数据框添加新的列,改变原变量列的值,通过赋值NULL删除列变量;transform(‘data’,….)data就是要修改的data, '…..'代表你要进行的修改。4.3 变量的重编码重编码涉及根据同一个变量和/或其他变量的现有值创建新值的过程。4.4 变量的重命名4.5 缺失值在R中,缺失值以符号NA( Not Available,不可用)表示。不可能出现的值(例如,被0除的结果)通过符号NaN( Not a Number,非数值)来表示。与SAS等程序不同, R中字符型和数值型数据使用的缺失值符号是相同的。函数is.na()允许你检测缺失值是否存在:如果某个元素是缺失值,相应的位置将被改写为TRUE,不是缺失值的位置则为FALSE。(1)重编码某些值为缺失值:请确保所有的缺失数据已在分析之前被妥善地编码为缺值,否则分析结果将失去意义。(2)在分析中排除缺失值:确定了缺失值的位置以后,你需要在进一步分析数据之前以某种方式删除这些缺失值。原因是,含有缺失值的算术表达式和函数的计算结果也是缺失值。函数中选项参数na.rm=TRUE,可以在计算之前移除缺失值。在使用函数处理不完整的数据时,请务必查阅它们的帮助文档(例如, help(sum)),检查这些函数是如何处理缺失数据的。na.omit()可以删除所有含有缺失数据的行。4.6 日期值日期值通常以字符串的形式输入到R中,然后转化为以数值形式存储的日期变量。函数as.Date()用于执行这种转化。其语法为as.Date(x, "input_format"),其中x是字符型数据, input_format则给出了用于读入日期的适当格式。4.7 类型转换判断某个对象的数据类型和将其转换为另一种数据类型的函数4.8 数据排序在R中,可以使用order()函数对一个数据框进行排序。默认的排序顺序是升序。在排序变量的前边加一个减号即可得到降序的排序结果。4.9 数据集的合并向数据框中添加列(变量)和行(观测)(1)添加列要横向合并两个数据框(数据集),请使用merge()函数。在多数情况下,两个数据框是通过一个或多个共有变量进行联结的(即一种内联结, inner join)。如果要直接横向合并两个矩阵或数据框,并且不需要指定一个公共索引,那么可以直接使用cbind()函数(每个对象必须拥有相同的行数,且要以相同顺序排序)(2)添加行纵向合并两个数据框(数据集),请使用rbind()函数。两个数据框必须拥有相同的变量,不过它们的顺序不必一定相同。4.10 数据集取子集
subset()函数4.11 随机抽样sample()函数:从数据集中(有放回或无放回地)抽取大小为n的一个随机样本。sample()函数中的第一个参数是一个由要从中抽样的元素组成的向量。第二个参数是要抽取的元素数量,第三个参数表示无放回抽样。最近去学ggplot2作图,暂时停止这本书的学习。先去把ggplot2绘制科研图的代码熟悉后,再来分享学习笔记!

我要回帖

更多关于 一个很像r的特殊符号 的文章

 

随机推荐