第二章 数据的读取和保存

查看和载入数据集

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.csv() 读取逗号分隔文件,header默认值为TRUE

read.delim() 针对使用其他分隔符的数据(并且不使用行号),sep默认值为”\t”

scan() 如果不加参数,则手动输入数据,大部分参数与read.table相同,没有header参数,其他需要注意的参数如下:

what 指定要读取的数据类型,默认为数值型向量

nmax 指定要读入数据的最大数量,如果what=list,则为最大的行数,默认将读到文件末端

n 要读取数据的最大数量,默认值为没有限制

举例

data2

由于不存在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

data.excel

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对象