键盘输入
调用edit函数,比如我们要让用户输入一个长度为5的向量并赋值给变量a,那么可以:
a<-vector(
"
integer
",
5)
a<-edit(a)
a<-edit(a)
另外也可以用函数fix来直接编辑变量,而不需要再赋值变量。所以上面编辑a变量的命令可以改为:
a<-vector(
"
integer
",
5)
fix(a)
fix(a)
读取文本文件
read.table函数可以读取csv文件,也可以读取其他分隔符分割的文本文件。如果是Tab键分割,那么就是“\t”比如:
y<-read.table(
"
hw1_data.txt
",header=TRUE,sep=“\t”)
如果是标准的CSV文件,那么可以使用read.table还可以使用read.csv函数读取:
x<-read.csv(
"
hw1_data.csv
")
读取Excel格式的文件
Excel格式分为老的xls和新的xlsx两种,其实读取方法是一样的,一般现在使用的都是xlsx格式的Excel文件了,要读取这种格式的文件,需要安装package: xlsx。
library(xlsx)
excelFile<- " test1.xlsx "
excel<-read.xlsx(excelFile, 1)
excelFile<- " test1.xlsx "
excel<-read.xlsx(excelFile, 1)
最后那个参数1表示读取第一个Sheet,如果要读取第二个Sheet就将该参数改为2.
读取Url
如果我们想直接读取一个Url文件,那么可以使用url函数建立一个connection,然后使用readLines函数得到该Url的内容。
比如:
b<-url(
"
http://www.baidu.com
")
html<-readLines(b)
html<-readLines(b)
这些需要说明的是,除了HTTP协议,还可以使用ftp协议file://共享文件夹。另外还可以设置访问网络的代理。
读取数据库
如果需要在R中连接数据库,主要是使用ODBC来连接,需要安装包RODBC。如果是Linux或者Mac平台,对于MySQL数据库,可以安装RMySQL包。
因为我现在是Mac,就以MySQL为例,我在MySQL的test数据库中建立了一个表Employee,现在需要读取该表。
library(RMySQL)
conn<-dbConnect(MySQL(),dbname= " test ",host= " 127.0.0.1 ")
conn<-dbConnect(MySQL(),dbname= " test ",host= " 127.0.0.1 ")
接下来我们要查看有哪些表,可以:
dbListTables(conn)
如果我要查询Employee表中的所有数据,那么:
emp<-dbGetQuery(conn,
"
select * from Employee”)
查询完了数据库记得关闭连接,这是一个好习惯:
dbDisconnect(conn)
如果我们连接的不是MySQL,那么就需要安装对应的数据库连接的包。比如:
- ROracle
- RPostgreSQL
- RSQLite
另外也可以用JDBC来访问数据库,包是RJDBC