R语言学习笔记(二)导入数据

导入CSV文件

文件:G:/autompg.csv

字段:

  1. mpg:continuous
  2. cylinders:multi-valued discrete
  3. displacement:continuous
  4. horsepower
  5. weight:continuous
  6. acceleration:continuous
  7. model year:multi-valued discrete
  8. origin:multi-valued discrete
  9. car name:string (unique for each instance)

读取文件:

if(FALSE){stringsAsFactors=FALSE读取字符串变量}
auto_mpg <- read.table("G:/autompg.csv", header=TRUE, sep=',',stringsAsFactors=FALSE,quote = "")
summary(auto_mpg)

输出为:(与实际表格的字段类型不符)
这里写图片描述

用colClasses为每一列指定一个类,例如logical(逻辑型)、numeric(数值型)、character(字符型)、factor(因子)。

auto_mpg <- read.table("G:/autompg.csv",colClasses=c("numeric","factor","numeric","numeric","numeric","numeric","factor","factor","character") ,header=TRUE, sep=',',quote = "")
summary(auto_mpg)
if(FALSE){查看前5行}
auto_mpg[1:5,]

输出结果为:
这里写图片描述

导入EXCEL文件

1.将EXCEL文件转化为CSV文件,再导入CSV文件(最佳方式)

2.利用xlsx包或者RODBC包导入数据

if(FALSE){安装xlsxC包}
install.packages("xlsx")
if(FALSE){读取autompg.xlsx的第一页表}
library(xlsx)
mydata <- read.xlsx("G:/autompg.xlsx", 1)

这将又会出现导入CSV文件的问题,即导入的数据类型与原来数据类型不一致。

导入数据库表格

在R中通过RODBC包访问一个数据库也许是最流行的方式,这种方式允许R连接到任意一种拥有ODBC驱动的数据库,其实几乎就是市面上的所有数据库。

以导入MySQL数据库数据表为例。前提是你的电脑上已经安装了MySQL的ODBC驱动程序,网址为https://dev.mysql.com/downloads/connector/odbc/.
这里写图片描述
安装完MySQL的ODBC驱动后,打开控制面板的管理工具,根据自己的Windows系统版本打开ODBC数据源。再连接到MySQL数据库,我们以访问test数据库为例,数据源名称为connect_mysql.
这里写图片描述
这样设置完后,我们就可以利用R语言连接数据库了(注意:这是双向的连接)。

library(RODBC)
if(FLASE){连接数据库,账号为root,密码为123456}
myconn <-odbcConnect("connect_mysql",uid="root",pwd="123456")
if(FALSE){连接该数据库的product表格}
mysqldata <- sqlFetch(myconn, "product")

对数据库的操作

library(RODBC)
if(FALSE){连接数据库+账号为root+密码为123456}
myconn <-odbcConnect("connect_mysql",uid="root",pwd="123456")
if(FALSE){连接该数据库的product表格+并查看前5行}
mysqldata <- sqlFetch(myconn, "product")
print(mysqldata[1:5,])
if(FALSE){对product表进行SQL查询}
print(sqlQuery(myconn, "select * from product where maker ='E'"))
print(sqlQuery(myconn, "select maker,max(model) as max_model from product group by maker"))
if(FALSE){关闭连接}
close(myconn)

这里写图片描述

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值