R语言如何从外部读取数据到R中

Python014

R语言如何从外部读取数据到R中,第1张

R语言如何从外部读取数据到R中

R语言可以从键盘,文本,excel,access,数据库,专业处理软件sas

一、使用键盘的输入

mydata<-data.frame(age=numeric(0),gender=character(0),weight=numeric(0))

mydata<-edit(mydata)

二、读入带有分隔符文本格式的数据

data<-read.table(文件,header=true/false,sep="delimeter",row.names=列名)

其中文件可以有很多选项的

file()gzfile(),bzfile(),等一些压缩文件以及url(http://,ftp://,smtp://)

例子:

默认的时候,字符串会自动使用factor转化为数值型

data<-read.table("student.csv",header=TRUE,sep=",",row.names="studentid",stringsAsFactors=FALSE)

三、将xls文件导入到R中

(1)将xls变成csv的格式导入

(2)在Windows系统中,你也可以使用RODBC包来访问Excel文件。

library(RODBC)

channel <- odbcConnectExcel("student.xls")

mydataframe<-sqlFetch(channel,"Sheet1")

odbcClose(channel)

四、抓取网页并且提取信息

五、导入spss数据

library(Hmisc)

mydata<-spss.get("mydata.sav",use.value.labels=TRUE)

六、导入SAS数据

将sas格式的数据转换为csv格式的数据 然后用read.table()形式导入

七、导入关系型数据库的数据

R中有多种面向关系型数据库管理系统(DBMS)的接口,包括Microsoft SQL Server、Microsoft Access、MySQL、Oracle、PostgreSQL、DB2、Sybase、Teradata以及SQLite。其中一些包通过原生的数据库驱动来提供访问功能,另一些则是通过ODBC或JDBC来实现访问的。

(1)使用ODBC的方式导入数据

首先,既然你要画残差(residual)的qqplot 那一定要先做回归。

你没说明回归自变量和因变量都是什么,假设第二列是因变量pressure[2],第三列是自变量pressure[3]

1.回归

>lm.fit<-lm(pressure[2]~1+pressure[3])

2.做qq图

这里不用qqplot这个指令,用qqnorm和qqline就好

>qqnorm(lm.fit$res)

>qqliine(lm.fit$res)

提取?就直接write.table()

比如你要第二列和第三列

>write.table(pressure[c(2,3)],file="c:\test.txt",quote=F,row.names=F,sep="\t")

第一个参数pressure[c(2,3)]是你要提取的变量

第二个参数file= 是你要存放的地址和文件名

第三个参数quote=F 是你打出来的数字都没有引号(默认是字符型)

第四个参数row.names=F 是不要行名称(为什么不要?自己试试就知道了)

第五个参数sep="\t" 每列数据之间空一个tab的距离,也就是8个字节,清晰明了。