首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《R语言实战》学习笔记(三)

往期回顾

作为一名数据分析师,通常会面对来自多种数据源和数据格式的数据,而我们的任务就是将这些数据导入我们的工具,分析数据,形成数据分析报告。

R可以从键盘文本文件Microsoft ExcelAcess、流行的统计软件特殊格式的文件,以及多种关系型数据库中导入数据。

键盘输入数据的方式通常对小数据集较为有效,这里就不在赘述。我们重点学习导入较大的数据集的方式:文本文件、统计软件、Excel表格或数据库中导入数据。

一、从带分隔符的文本文件导入数据

read.table()函数从带分隔符的文本文件中导入数据,即读入一个表格格式的文件并将其保存为一个数据框。语法如下:

mydataframe

其中,file是一个带分隔符的ASCII文本文件,header是一个表明首行是否包含了变量名的逻辑值sep用来指定分隔数据的分隔符,row.names是一个可选参数,用以指定一个或多个行标识符的变量。

二、导入Excel数据

读取Excel文件最好的方式,就是在Excel中将其导出为一个逗号分割文件(csv),并使用上面所提到的方式导入R中。

Windows系统中,你也可以使用RODBC包来访问Excel文件,电子表格的第一行应当包含变量/列的名称。

Excel 2007以后的版本格式为XLSX的文件格式,这时需要xlsx包来读取这种格式的电子表格。包中的函数为read.xlsx(file,n),其中file是Excel 2007工作簿的所在路径,n为要导入的工作表序号。

三、访问数据库管理系统

R中有多种面向关系型数据库管理系统(DBMS)的接口,其中一些包通过原生的数据库驱动来提供访问功能,另一些则是通过ODBC或JDBC来实现访问的。

3.1 ODBC接口

在R中通过RODBC包访问一个数据库是最流行的方式,几乎涵盖所有的数据库。

第一步:这对自身的系统和数据库类型安装和配置合适的ODBC驱动(不是R的一部分)。

第二步:安装RODBC包。以下为包中的主要函数:

odbcConnect(dsn,uid="",pwd="") 建立一个到ODBC数据库的连接

sqlFetch(channel,sqltable) 读取数据库中的某个表到数据框中

sqlQuery(channel,query) 向数据库提交一个查询并返回结果

sqlSave(channel,mydf,tablename=sqtable,append=FALSE) 将数据框写入 或更新到ODBC数据库的某个表中

sqlDrop(channel,sqtable) 删除OBC数据库中的某个表

close(channel) 关闭连接

3.2 DBI相关包

DBI包为访问数据库提供一个通用且一致的客户端接口。RJDBC包提供了通过JDBC驱动访问数据库的方案。

数据准备工作可能是数据分析中最具有挑战性的任务之一。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180309G0X1NV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券