R极简教程-7:读取数据

本文详细介绍了在R语言中如何读取各种类型的数据,包括加载RData文件、读取文本文件(如CSV和TXT)、读取Excel文件、从数据库中提取数据以及使用网络爬虫抓取数据。通过实例展示了read.csv()、read.table()、readxl包、DBI包等工具的使用方法,以及如何处理数据导入时遇到的特殊格式和问题。
摘要由CSDN通过智能技术生成

读取数据往往是进行数据分析的第一步,数据读取的方式很多,就R语言而言,常见的有几种:Load已经存好的RData,读取文本文件,读取excel文件,读取数据库文件,抓取网络数据。

读取RData

RData是过往存储好的数据格式,你在存储的时候,可以往一个RData中存入不止一个变量,再读取的时候,它们都会被一同载入进来。

> A
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    5    9   13   17
[2,]    2    6   10   14   18
[3,]    3    7   11   15   19
[4,]    4    8   12   16   20
> save(A,file="./A.rda")

下面我将A变量存储成为本地的A.rda文件,在存储的时候,你的名字其实可以随便取,甚至后缀名都可以随便取,我这里用的是A.rda是因为我常用的Bioconductor网站将这个后缀规定为标准名称,其实你可以命名为各种各样的名字——.RData, .rdata, .RDA…什么都可以,但其实都没区别,因为只要是save函数存储的东西,结果都是一样的。

然后是载入数据:

> load("./A.rda")
> ls()
[1] "A"
> A
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    5    9   13   17
[2,]    2    6   10   14   18
[3,]    3    7   11   15   19
[4,]    4    8   12   16   20
> 

使用load()函数就可以载入文件,要记得越大的文件,存储时间越长,载入时间也越长,所以最好不要轻易存取大文件。。。想好了再操作。

读取文本文件

文本文件是很常见的格式,从txt到各种都有,R提供了read.csvread.table这两个很常用的读取函数。

理论上read.csv是用来读取csv文件的,但其实这两个函数谁好用说不清的,你的csv文件或者txt文件难说有一些特殊的设置,比如tab分割啊,空格分隔啊一类的。我这些年的经验是,都试试,改改参数,总会能用的。

下面我们演示一下:
首先我们复制了TOIBE网站上的计算机语言排名,粘贴到一个txt文档中:
这里写图片描述

然后我们分别尝试用read.csv()和read.table去读取它们:
这里写图片描述
可以看到,理论上我们应该用read.table去读取,但是最后read.csv()读取成功了。我也不算什么高手,具体细节还不够清楚。经常读文件都是试着试着的就搞定了。

总之,读取的命令都是:

A <- read.csv("file/path/XXX.file",head,sep)

其中head是告诉程序,你的txt文件有没有标题行,sep是告诉程序,用什么标准来区分每一个列。

读取Excel文件

个人觉得读取Excel文件最理想的办法,不就是把它存储成csv文件,然后直接用read.csv()读取吗?

不过有很多很多其他的直接从Excel读取数据的方法。比如gdata包就是不错的选择:

首先我们把之前的那个文本存储成Excel,我用的是Office2016,名字叫做Toibe.xlsx,然后用命令就可以读取第一个sheet里边的所有信息。

> library(gdata)
> read.xls("./Toibe.xlsx",sheet=1,head=T)
   Jun.17 Jun.16 Change Programming.Language Ratings Change.1
1       1      1                        Java  14.49%   -6.30%
2       2      2                           C   6.85%   -5.53%
3       <
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值