rjdbc读取mysql_R 学习笔记: 数据输入输出

一般文件

手动输入数据

如果数据量不大, 可以手动输入数据, 除了通过变量赋值的方法来输入数据外, 还可以通过编辑器或调用的窗口来输入数据.

mydata

mydata

fix(mydata) # 使用fix直接修改变量

scan 函数如果不加 file 的参数, 则直接从终端读取数据, 需要使用 what 来指明数据类型: what=""读字符, what=0 读数字, what=list(a=0, b="") 把读的结果按相应类型保存成 list. scan 函数也可以放在其他的函数中, 如 matrix, 然后在终端输入值.

scan()

mymat

读取文本文件

mydata

除了 read.table 直接把 scan 函数封装好的函数外, 还有 read.csv, read.csv2, read.delim, read.delim2 等对 read.table 进行了按照文件类型进行特别设置的函数可以使用.

read.csv: 以 "," 分隔的 CSV 文件, 默认第一行为表头, 以 "." 作为小数点.

read.csv2: 以 ";" 分隔的 CSV 文件, 默认第一行为表头, 以 "," 作为小数点.

read.delim: 以 "\t" 分隔的 TSV 文件, 默认第一行为表头, 以 "." 作为小数点.

read.delim2: 以 "\t" 分隔的 TSV 文件, 默认第一行为表头, 以 "," 作为小数点.

read.fwf: 按照固定长度去读取文件.

读取 Excel 文件

对于 Excel 文件, 可以像连接数据库一样进行连接, 使用 RODBC 包 (限于 Windows).

library(RODBC)

channel

mydata

odbcClose(channel)

Excel 2007 采用的 xlsx 文件实际上相当于 xls 的压缩文件. 对于 xlsx 文件, 可以使用 xlsx 包, 来读取和操作 xlsx 文件.

library(xlsx)

mydata

也可以在所有的平台上使用 gdata 包的 read.xls 来读取 Excel 文件.

关系数据库

ODBC 数据库接口

在系统安装有合适的 ODBC 驱动的情况下, 使用 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 提供数据库通用接口. 相关 R 包有 RJDBC, RMySQL, RPostgreSQL, ROracle, RSQLite 等.

链接 Connection

有的时候不需要直接把所有的文件读入内存, 这种情况下可以使用链接 (connection) 的方法读取文件. 需要注意的是, 建立链接并不读取文件, 当使用结束后还应该关闭链接.

connections

connections 的函数都是在 base 包中的, 包括 open, close 等. 链接可以用到之前需要使用文件名作为参数的地方, 如在 write.table 的参数中可以把一个链接赋值给 file 参数. 创建的链接默认不会打开, 需要使用包括 open 在内的其他函数打开链接.

创建链接file: 创建文件链接.

url: 创建 url 链接.

gzfile: 创建 gz 压缩文件链接.

bzfile: 创建 bz 压缩文件链接.

xzfile: 创建 bz 压缩文件链接.

unz: 创建只读的 zip 压缩文件链接.

pipe: 创建管道链接.

fifo: 按先进先出的队列打开.

socketConnection: 创建需要账号等信息的 socket 链接.

textConnection: 使用变量等对象建立链接.

创建链接的函数有 open 选项, 可以选择链接类型, 其中 "t" 是创建 text 链接, "b" 是创建 binary 链接."r" 或者 "rt" 创建只读的 text 链接.

"w" 或者 "wt" 创建重新写的 text 链接.

"a" 或者 "at" 创建续写的 text 链接.

"rb" 创建只读的 binary 链接.

"wb" 创建重新写的 binary 链接.

"ab" 创建续写的 binary 链接.

"r+", "r+b" 创建读写的链接.

"w+", "w+b" 创建读写的链接, 在起始时先清除链接.

"a+", "a+b" 创建附加读写的链接.

seek: 用来改变链接指针的位置.

打开和关闭链接

当链接被打开并被操作之后, 链接的位置指针会从头向后移动, 一定读取等操作之后会移动到链接末尾.open: 打开创建的链接.

close: 关闭打开的链接.

isOpen: 判断链接是否打开.

isIncomplete: 判断链接是否被阻断.

一些函数可以直接打开链接, 有的以文本形式打开, 有的以二进制形式打开.

文本

readLines: 从链接中读取一定的行数 (n, 如果 n 为负数则读取整个文件).

writeLines: 把一定的内容以文本形式写入一个链接.

cat: 把一些对象连接并输出到文件或者链接.

sink: 把 R 的输出导向文件 (名) 或链接.

scan: 从文件或链接读取, what 参数可以指定读取数据的保存类型.

parse: 接受文件名或者链接做为解析参数.

read.dcf, write.dcf: debian control file.

dput, dget: 以 ASCII 码形式保存或读取 R object.

dump: 把一系列以变量名标示的 R object 解析为文本保存到文件或链接, 会把相应的 R 代码保存.

二进制readBin

readChar

writeBin

writeChar

load

save

R 数据对象的存储和读取

有的时候需要把 R 中的对象存储下来, 以便下次直接使用或者换计算机使用. R 可以存储和读取特定的文件直接到内存中, 相应的 R 对象都会被保存.save.image: 把 R 中所有的对象 (ls 显示的对象) 都保存在文件中, 默认为 .RData

save: 把特定的 R 对象保存在文件中.

load: 把文件中保存的 R 对象读入内存.

另外欢迎大家关注我们的微信公众号:NGS_Learning

高通量测序技术!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值