第二章 数据的读取和保存
-
查看和载入数据集
data()
查看数据集列表
data(CO2)
载入CO2数据集
library(MASS)
载入MASSpackage
data(package=”MASS”)
查看MASS中数据集
data(SP500, package=”MASS”)
载入MASS中的SP500数据集
-
工作目录获取和设置
getwd()
获取各种目录
setwd(“d:/data”)
设置工作目录
-
读取数据
read.table()
读取文本文件,常用参数如下:
file 要读取的数据文件名称
header 逻辑值,TRUE表示文件的第一行包含变量名,默认为FALSE
sep 文件中字段的分隔符,默认为sep=””,表示分隔符是空格
quote 设置如何引用字符型变量,默认字符串被引号,如果没有设定分隔符,引号前面加\,即quote=”\”
dec 设置用来表示小数点的字符
row.names 向量的行名,默认为1,2,3。。。
col.names 向量的列名,默认为V1,V2,V3。。。
na.strings 赋给缺失数据的值(NA)
skip 开始读取数据前跳过的数据文件的行数
strip.white 是否清除空白字符
blank.lines.skip 是否跳过空白行
-
举例
data <- read.table(“d:/data/salary.txt”,header=TRUE)
直接读入完整的路径名称
read.csv()
读取逗号分隔文件,header默认值为TRUE
read.delim()
针对使用其他分隔符的数据(并且不使用行号),sep默认值为”\t”
scan()
如果不加参数,则手动输入数据,大部分参数与read.table相同,没有header参数,其他需要注意的参数如下:
what 指定要读取的数据类型,默认为数值型向量
nmax 指定要读入数据的最大数量,如果what=list,则为最大的行数,默认将读到文件末端
n 要读取数据的最大数量,默认值为没有限制
-
举例
data2 <- scan(“salary.txt”,skip=1,what=list(City=””,Work=0,Price=0,Salary=0))
由于不存在header参数,skip=1说明跳过表示名称的第一行;what=list(City=””,Work=0,Price=0,Salary=0)
指明要创建列表,指明列表中对象的名称,这是一个名义列表结果,用来指定第一个变量City是字符型,后面三个是数值型
mode()
显示对象的类型
names()
显示对象中的标签
dim()
显示对象的维度
attach()
固定搜索路径,常用于固定一个数据框,则可以直接引用数据框的列名,起相同作用的还有with()
函数
detach()
与attach()
作用相反
read.fwf()
读取固定宽度格式的文件,以行的方式读入数据,通过widths参数指定一个向量来设置各个字段的宽度,注意小数点也占一个字符
举例
data.fwf <- read.fwf(“d:/data/fwf.txt”,widths=c(2,4,4,3),col.names=c(“w”,”x”,”y”,”z”))
data.excel <- read.delim(“clipboard”)
先复制,然后从剪贴板读取,读取excel的便捷方式,或者使用RODBC包或者xlsx包
readHTMLTable()
XML包读取网页的函数,主要参数如下:
doc HTML文件或URL(网页网址)
header 若为逻辑值,表示是否包含列标签,若为字符向量,则为列名赋值
colClasses 一个列表或向量,制定表中各列数据的类型
skip.rows 指定要忽略的行
trim 逻辑值,表示是否要删除开头和结尾的空白单元格
which 整数向量,表示返回网页中的哪几个表
load()
载入R格式的文件,.Rdata结尾的文件
-
foreign包
read.spss()
read.mtp()
read.ssd()
read.dta()
spss数据集,使用Hmisc包中的spss.get()
函数
-
输出对象
cat()
在屏幕上输出对象,或输出文件,append参数为TRUE表示追加
readLines()
直接从链接中以行的形式读入文本
write.table()
写入文本
write.csv()
写入csv文件
save()
保存R对象
网友评论