vlambda博客
学习文章列表

R语言学习笔记第二章创建数据集 续


数据的输入


使用键盘输入数据:edit( )

R语言学习笔记第二章创建数据集 续


语句mydata <- edit(mydata)的一种等价写法是fix(mydata)

R语言学习笔记第二章创建数据集 续



从带分隔符的文本文件导入数据:read.table( )

要求是一个带分隔符的ASCII文本文件

R语言学习笔记第二章创建数据集 续

?????

R语言学习笔记第二章创建数据集 续

?????

 

    默认情况下,字符型变量将转换为因子。设置选项stringsAsFactors = FALSE,将停止对所有字符型变量的此种转换,或者使用选项 colClasses为每一列指定一个类。

更多详情,请参阅help(read.table)

 

       R也提供了若干种通过连接(connection)来访问数据的机制。函数file( )允许用户访问文件、剪贴板和C级别的标准输入。函数gzfile( )bzfile( )xzfile( )unz( )允许用户读取压缩文件。函数url( )能够让你通过一个含有http://ftp://file://的完整URL访问网络上的文件,还可以为HTTPFTP连接指定代理。为了方便,(用""围住的)完整的URL也经常直接用来代替文件名使用。

更多详情,参见help(file)

 



导入Excel数据

  • 方法一:在Excel中将其导出为一个逗号分隔文件(csv),并使用前文描述的方式将其导入R

  • 方法二:使用RODBC包来访问Excel文件。电子表格的第一行应当包含变量/列的名称

R语言学习笔记第二章创建数据集 续

odbcConnectExcel( )函数只能用于32位操作系统?

R语言学习笔记第二章创建数据集 续

为什么找不到这个工作表?

 


导入XML数据

Duncan Temple Lang编写的XML包允许用户读取、写入和操作XML文件。


从网页抓取数据

使用函数readLines( ) 下载网页,然后使用如grep( )gsub( )一类的函数处理它。

对于结构复杂的网页,可以使用RCurl包和XML包来提取其中想要的信息


导入SPSS数据

    可以通过foreign包中的函数read.spss( )导入到R中,也可以使用Hmisc包中spss.get( )函数。函数spss.get( )是对read. spss( )一个封装,它可以为你自动设置后者的许多参数,让整个转换过程更加简单一致,最后得到数据分析人员所期望的结果。

 

注:封装,即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成,其中数据和函数都是类的成员。


导入SAS数据

R中设计了若干用来导入SAS数据集的函数,包括foreign包中的read.ssd( )Hmisc包中sas.get( )


导入Stata数据


导入netCDF数据

netCDFnetwork Common Data Form,网络通用数据格式)


导入HDF5 数据

HDF5Hierarchical Data Format,分层数据格式)


访问数据库管理系统

1.   ODBC接口

2.   DBI相关包


通过Stat/Transfer导入数据

 


——————————————————————————


 

数据集的标注


    通常这种标注包括为变量名添加描述性的标签,以及为类别型变量中的编码添加值标签。


变量标签

是将变量标签作为变量名,然后通过位置下标来访问这个变量。



值标签

函数factor( )可为类别型变量创建值标签


这里levels代表变量的实际值,而labels表示包含了理想值标签的字符型向量。


 

处理数据对象的实用函数

2-3处理数据对象的实用函数

length(object)

显示对象中元素/成分的数量

dim(object)

显示某个对象的维度

str(object)

显示某个对象的结构

class(object)

显示某个对象的类或类型

mode(object)

显示某个对象的模式

names(object)

显示某对象中各成分的名称

c(object, object,…)

将对象合并入一个向量

cbind(object, object, …)

按列合并对象

rbind(object, object, …)

按行合并对象

Object

输出某个对象

head(object)

列出某个对象的开始部分

tail(object)

列出某个对象的最后部分

ls()

显示当前的对象列表

rm(object, object, …)

删除一个或更多个对象。语句rm(list = ls())将删除当前工作环境中的几乎所有对象*

newobject <- edit(object)

编辑对象并另存为newobject

fix(object)

直接编辑对象