文档章节

R 语言读取数据的几种方式简介

香吉士
 香吉士
发布于 2014/04/23 13:53
字数 1120
阅读 4896
收藏 5

R 语言数据输入的几种方式简介,希望能对大家有所帮助


$使用键盘输入数据

mydata<-data.frame(age=numeric(0))

edit(mydata)


$从带分隔符的文本文件中导入数据 (.csv文件)

你可以使用read.table()从带分隔符的文本文件中导入数据。此函数可读入一个表格格式

的文件并将其保存为一个数据框。其语法如下:

mydataframe<-read.table(file,header=logical_value,sep="delimiter",row.names="name")

其中,file是一个带分隔符的ASCII文本文件,header是一个表明首行是否包含了变量名的逻

辑值(TRUE或FALSE),sep用来指定分隔数据的分隔符,row.names是一个可选参数,用以指

定一个或多个表示行标识符的变量。

参数sep允许你导入那些使用逗号以外的符号来分隔行内数据的文件。你可以使用

sep="\t"读取以制表符分隔的文件。此参数的默认值为sep="",即表示分隔符可为一个或多个

空格、制表符、换行符或回车符。


$导入Excel数据

读取一个Excel文件的最好方式,就是在Excel中将其导出为一个逗号分隔文件(csv),并使

用前文描述的方式将其导入R中。在Windows系统中,你也可以使用RODBC包来访问Excel文件。

电子表格的第一行应当包含变量/列的名称。

首先,下载并安装RODBC包。

install.packages("RODBC")

你可以使用以下代码导入数据:

channel<-odbcConnectExcel("e:/patientA.xls")

如果是 EXCEL 2007 可以用

install.packages("xlsx")

library(xlsx)

read.xlsx("来读取文件")


$导入XML数据

www.omegahat.org/RSXML


$从网页抓取数据

www.programmingr.com


$导入SPSS数据

SPSS数据集可以通过foreign包中的函数read.spss()导入到R中,也可以使用Hmisc包中

的spss.get()函数。函数spss.get()是对read. spss()的一个封装,它可以为你自动设置

后者的许多参数,让整个转换过程更加简单一致,最后得到数据分析人员所期望的结果。


$导入SAS数据

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

的sas.get()。


$访问数据库管理系统

R中有多种面向关系型数据库管理系统(DBMS)的接口,包括Microsoft SQL Server、Microsoft

Access、MySQL、Oracle、PostgreSQL、DB2、Sybase、Teradata以及SQLite。其中一些包通过原

生的数据库驱动来提供访问功能,另一些则是通过ODBC或JDBC来实现访问的。使用R来访问存

储在外部数据库中的数据是一种分析大数据集的有效手段


ODBC接口

在R中通过RODBC包访问一个数据库也许是最流行的方式,这种方式允许R连接到任意一种

拥有ODBC驱动的数据库,其实几乎就是市面上的所有数据库。

第一步是针对你的系统和数据库类型安装和配置合适的ODBC驱动——它们并不是R的一部

分。如果你的机器尚未安装必要的驱动,上网搜索一下应该就可以找到。

针对选择的数据库安装并配置好驱动后, 请安装RODBC 包。你可以使用命令

install.packages("RODBC")来安装它。


RODBC中的函数

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

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

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

sqlSave(channel,mydf,tablename=sqtable,append=FALSE)

将数据框写入或更新(append=TRUE)到ODBC数据库的某个表中

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

close(channel) 关闭连接


DBI接口

DBI包为访问数据库提供了一个通用且一致的客户端接口。构建于这个框架之上的RJDBC包

提供了通过JDBC驱动访问数据库的方案。使用时请确保安装了针对你的系统和数据库的必要

JDBC驱动。其他有用的、基于DBI的包有RMySQL、ROracle、RPostgreSQL和RSQLite。这些

包都为对应的数据库提供了原生的数据库驱动,但可能不是在所有系统上都可用。详情请参阅

CRAN(http://cran.r-project.org)上的相应文档。


© 著作权归作者所有

共有 人打赏支持
香吉士
粉丝 13
博文 42
码字总数 28641
作品 0
南京
产品经理
私信 提问
加载中

评论(3)

xinguanwangkun
xinguanwangkun
感觉像是《r语言实战》里的内容。补充一点,对数据库的操作,不同的数据库有自己的数据库驱动包,如mongodb的包为rmongodb。
香吉士
香吉士

引用来自“小青年是我”的评论

有人吗?我现在有800万数据需要分析,用r语言怎么可以导进去分析?
R 语言还是比较适合做小样本数据分析,800万数据只要内存够用也是可以用的,通过数据库访问数据吧
小青年是我
有人吗?我现在有800万数据需要分析,用r语言怎么可以导进去分析?
用R语言做数据分析(3)——向量

图一 R语言的数据对象类型简介图 在本系列文章中,接下将分别介绍R语言的几种数据对象:向量、矩阵、数据框与列表、其它特殊对象; 请大家在学习R语言的时候永远记住一个概念,R语言所有内容...

师弟文
2015/11/30
65
0
“R语言机器学习与大数据可视化”暨“Python文本挖掘与自然语言处理”核心技术高级研修班的通知

中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办〔2017〕 第45号 “R语言机器学习与大数据可视化”暨“Python文本挖掘与自然语言处理”核心技术高级研修班的通知 各有关单...

meyh0x5vdtk48p2
2018/01/02
0
0
scrapy解析网页时,针对一些特别格式的数据的处理

scrapy解析网页时,针对一些特别格式的数据的处理 1. 环境 python 3.6.1 系统:win7 IDE:pycharm scrapy框架 2. 页面源代码中含有json数据 2.1. 案例 参考页面: https://www.amazon.com/B...

zwq912318834
2017/12/07
0
0
EntityFramework

说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是Spring+Struts+Hibernate,除了在学习基础知 识的时候被告知可以使用JDBC操作数据库之外,大量的书籍中都是讲述使用Hiber...

光辉岁月
2011/04/14
0
0
18个R语言教程

实验楼上有不少的R语言开发教程,这里做一个整理总结,你可以挑选自己感兴趣的教程进行学习,希望对学习R语言的小伙伴有所帮助; 概览如下:1个入门教程 + 4个根据书籍制作的项目教程 + 3个进...

实验楼
2017/10/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

HIVE 常见的内置函数

文章目录 1 关系运算 1.1 1、等值比较: = 1.2 2、不等值比较: 1.3 3、小于比较: < 1.4 4、小于等于比较: <= 1.5 5、大于比较: > 1.6 6、大于等于比较: >= 1.7 7、空值判断: IS NULL 1.8 8、非...

瑞查德-Jack
19分钟前
1
0
JVM参数介绍

参数说明 -Xmx3550m:设置JVM最大堆内存为3550M。 -Xms3550m:设置JVM初始堆内存为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。 -Xss128k:设置每个线程的栈大...

嘴角轻扬30
25分钟前
3
0
贵州偏僻五线小城,竟冒出一家流水过10亿的互联网公司

“可账上多出来的这一个亿干嘛呢? 投资人万万没想到,杨鹏把这些钱用来买理财产品,一年有四五百万收入。” 这个逗死我了。。 贵州偏僻五线小城,竟冒出一家流水过10亿的互联网公司

火云
25分钟前
1
0
浅谈跨平台框架 Flutter 的优势与结构

作者:个推iOS工程师 伊泽瑞尔 一、背景 目前,移动开发技术主要分为原生开发和跨平台开发两种。其中,原生应用是指在某个特定的移动平台上,使用平台所支持的开发工具和语言,直接调用系统提...

个推
27分钟前
2
0
git 不能访问github 升级ciper

fatal: unable to access  Peer reports incompatible or unsupported protocol version.sudo yum update -y nss curl libcurl...

shengjuntu
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部