R语言实战(第2版)——第2章-2.3数据的输入
使用键盘输入小数据
#P31 2.3.1 使用键盘输入数据(小数据集)
mydata <- data.frame(age=numeric(0),gender=character(0),weight=numeric(0)) #创建一个数据框
mydata <- edit(mydata) #调用数据文本编辑器
mydatatxt <- "
age gender weight
25 m 166
30 f 115
18 f 120
"
mydata <- read.table(header = TRUE, text=mydatatxt)
从带分隔符的文本文件导入数据
setwd("E:/2-science_learning/R_learning_20/Rcode/R_in_Action_v2_011121")
grades <- read.table("studentgrades.csv", header = TRUE, row.names = "StudentID", sep=",")
str(grades)
容易出现这样的错误
这是因为输入名字时O'Leary未加引号,导致R系统认为单引号隔开的是两个不同的value,故只需将O'Leary加个引号即可。
导入excel数据
读取excel最好的方式是将其另存为csv文件,以read.table的方式读入
直接导入需要安装xlsx包,需要xlsxjars和rJava包,以及一个正常工作的Java安装
导入xml数据
XML包
从网页抓取数据
readLines()读取网页上的文字,grep()和gsub()处理
导入spss数据
foreign包的read.spss()
Hmisc包的spss.get()
导入SAS数据
foreign包的read.ssd()
Hmisc包的sas.get()
sas7bdat包的read.sas7bdat():不要求sas程序
导入stata数据
foreign包的read.dta()
导入NetCDF数据
ncdf包和ncdf4包
导入HDF5数据
rhdf5包
访问数据库管理系统
ODBC包
DBI包
通过Stat/Transfer导入数据
可在34种数据格式之间转换的独立应用程序