2.7 数据文件读写

2017-06-02  本文已影响0人  Andrew_bao

2.7 读,写数据文件

2.7.1 读纯文本文件

方式:1.read.table() 2.scan()

getwd()
setwd("D:/test")

例:read.table()

rt<-read.table("houses.data")
is.data.frame(rt);rt
rt<-read.table("houses.data",header = TRUE);rt

例:scan()

w<-scan("weight.data");w
is.list(w)
w<-scan("h_w.data",list(height=0,weight=0));w
is.list(w)

x<-matrix(scan("weight.data",0),nrow = 3,ncol=5,byrow=TRUE);x

上式等价形式:

x<-matrix(scan("weight.data",0),ncol=5,byrow=TRUE);x
x<-matrix(scan("weight.data",0),nrow = 3,byrow=TRUE);x

其中:skip=0 在开始读取数据值之前要跳过的输入文件的行数。

2.7.2 读取其他格式的数据文件

library(foreign)
setwd("D:/test/数据集")

SPSS 形成数据框

rs<-read.spss("educ_scores.sav",to.data.frame = TRUE);rs

SAS

rs<-read.xport("educ_scores.xpt");rs

S-PLUS

rs<-read.S("educ_scores");rs

Stata

rs<-read.dta("educ_scores.dta");rs

读取Excel数据文件,R语言不支持Excel文件读取。然后R软件读出。

方式1:将Excel转换为文本文件(制表符分隔文件)

rd<-read.delim("educ_scores.txt");rd

方式2:转换格式是Excel表转换成CSV文件,

rc<-read.csv("educ_scores.csv");rc

2.7.3 链接嵌入的数据库

R软件本地提供50多个数据和其他利用软件包

data()

1.装载本地数据集

data(infert)
infert

2.从其他软件链接数据包

data(package="nls")
data("Puromycin",package="nls")

以上是实例,具体引用时,套用格式

或者通过library附加到库中。在data()中可以看到基本包中有nls软件包

library(nls)
data()
data("Puromycin")

2.7.4 写数据文件

1.write()函数

write(x, file = "data",ncolumns = if(is.character(x)) 1 else 5,append = FALSE, sep = " ")

x是数据,file是文件名,append = TRUE时,在源文件上添加数据,否则写一个新文件.

2.write.table()和write.csv()函数写纯文本格式数据文件或CSV格式的Excel数据文件

df<-data.frame(
Name=c("Alice","Becka","James","Jerffrey","John"),
Sex=c("F","F","M","M","M"),
Age=c(13,12,13,14,13),
Height=c(56.5,65.3,57.3,62.5,59.0),
Weight=c(84.0,98.0,83.0,84.0,99.5)
)
write.csv(df,file="foo.csv")
write.table(df,file="foo.txt")

具体参数查看帮助文档

上一篇下一篇

猜你喜欢

热点阅读