R语言--readr包读写数据

article/2025/11/8 1:56:18

文章目录

  • 前言
  • 一、发现问题
  • 二、分析问题
  • 三、解决问题
  • 四、读写速度
  • 总结
  • 吐槽


前言

当你使出了浑身解数,read.csv和read.table还是无法读入数据时,或许可以尝试一下readr包中的read_tableread_csv等函数。尝试一下!

我是一个很专一(懒)的人,尽管网上有人说readr包中读入数据较传统函数速度快,我都一直用的传统方法,没有尝试过readr包。
直到今天实验室师兄告诉我他r语言读不进去数据,我尝试了很久,使用了很多参数,也网上搜索了很久,但都无果(可能是我比较笨),我才尝试使用这个包,结果就是,没有传入过多的参数就读进来了,太牛了,我哭死。
所以记录一下整个过程以及比较它和传统函数读写数据速度的差别。


一、发现问题

数据我就不上传了,说不定你们也不会遇到这种问题。。主要看一下报错吧!
我一开始觉得可能是数据编码的问题,然后:

a <- read.csv(file = 'seerv.csv',header = T,fill = T,check.names = F,fileEncoding = 'GBK')
a <- read.csv(file = 'seerv.csv',header = T,fill = T,check.names = F,fileEncoding = 'UTF-8')

报错
关于里面的header,fill,check.names,encoding,fileEncoding等参数我都进行了尝试(很多情况下,这些参数的更改可以顺利的读入数据),无果。(想进一步尝试并且交流的,我可以私发部分数据)

二、分析问题

除了更改部分参数,我还想着欣赏一下read.table的源代码,结果发现里面部分可能是引用的C语言,然而当初仅仅学习了C语言基础,所以企图通过源码解决问题的路子又断了。
通过read.table,不要加括号。或者edit(read.table) 可以查看代码。

这是部分源码的图:在这里插入图片描述
报错信息“no lines available in input”赫然出现,我知道在哪儿可能有问题,可是我却没有办法进一步分析原因。

三、解决问题

最后我脑抽在网上搜了一下,R语言读入数据,发现可以通过readr包读写数据,然后就成功读入了。
然后我,我懒,真的不想搞懂为什么传统方法读那个数据的时候会报错,就此作罢。

library(readr)
a <- read_csv(file = 'seer.csv')

成功结果
我*,以前的时候不使用check.names=F参数的话,传统方法会将某些特殊符号编码为.(点),而read_csv根本不需要用什么check.names参数。

四、读写速度

最后,很多人都说这个包读写数据快,我就测试一下它和传统函数在读写速度上的区别,这个区别到底有多大。

d <- matrix(rnorm(25000000),nrow = 5000,ncol = 5000)
d <- as.data.frame(d)
t1 <- Sys.time()
write.csv(d,file = 'write.csv.csv')
Sys.time()-t1
t1 <- Sys.time()
write_csv(d,file = 'write_csv.csv')
Sys.time()-t1t1 <- Sys.time()
a <- read.csv(file = 'write.csv.csv')
Sys.time()-t1t1 <- Sys.time()
b <- read_csv(file = 'write_csv.csv')
Sys.time()-t1

写入数据:
写入速度
55.7秒 vs 1.7
write_csv: 的速度是write.csv: 的近30 倍。

读入数据:
在这里插入图片描述
1.3分 vs 20.3
read_csv: 读取数据的速度是read.csv的近3倍。

仅用一个数据集和一对函数进行比较,虽然结果速度差距可能不准确,但readr包读写速度真的快,我总不能每个数据都测试吧。

这里只是单纯进行一对函数读写速度的比较
函数里面的参数就不多提了。


总结

我太不想搞懂为什么数据读不进去的原因了,只要能读出来就行,不然师兄折磨我。哈哈哈!

吐槽

说个今天遇到的无语事,某某对于购买的代码,代码跑不下去了,报错了,发给我代码和数据,我跑了他的代码发现,基因矩阵里面没有预设的那个基因名字,换一个基因去研究就行了(可能说明书不够详尽)。然后就没有然后了,一句谢谢都没有。

小白一枚,欢迎大家批评指正。
如果大家能解决前面的read.csv问题的,私聊我,我给你部分数据。


http://chatgpt.dhexx.cn/article/07slknW0.shtml

相关文章

R语言入门:读取csv文件及获取统计数值(1)

本次编程尝试使用R语言读取csv文件“filesize.csv”&#xff0c;并根据内容绘制统计图和得出平均数&#xff0c;中位数和方差等简单数据。 csv文件内容1001个数值至少大于1000的小数组成&#xff0c;每行一个&#xff0c;共计1001行 在打开文件之前&#xff0c;我们可能会遇到…

R语言 读取文件

1. R读取txt文件 使用R读取txt文件直接使用read.table()方法进行读取即可&#xff0c;不需要加载额外的包。 read.table("/home/slave/test.txt",headerT,na.strings c("NA"))注意&#xff0c;此处的na.strings c("NA") 的意思是文件中的缺失数…

R从文件中读取数据,输出文件

看了几天的书&#xff0c;终于到这一步了&#xff0c;说实话&#xff0c;用R来做统计&#xff0c;很少有人手动的去输入那些数字&#xff0c;肯定是从别的地方导入的&#xff0c;我们用来处理就可以了&#xff0c;所以到这里才算是真正的入门&#xff0c;前面都是做基础的练手。…

R语言中文件或数据的读写

文章目录 系统数据的读写xlsx文件的读写举例说明具体代码结果如下 csv文件的读写读取csv文件写入csv文件使用readr包读取csv文件使用data.table包读取csv文件 scan函数scan()函数的使用语法参数含义描述实例&#xff1a; 系统数据的读写 save(a,b,file"test.RData")…

掌握R语言文件读取方法

目标 掌握 R语言文件读取方法 学习笔记 utils包内Date Input用法base包内readLines用法stringi包内stri_read_linesxlsx包内Date Input用法readr包内 Read a delimited file 用法 1.utils包内Date Input用法 以read.table为例。 read.table参数详细说明见http://www.360doc…

R语言入门(15)_读取文件(read)

目录 一、read.table() 读取工作路径下的纯文本文件&#xff08;.txt&#xff09;(.csv) 1、工作路径的设置 2、head函数——只显示数据前几行 3、read.table()的其他一些参数 二、与read.table相类似的函数 三、read.table()读取网络上的文本文件 三、读取非文本文件 …

使用R读取并查看数据

本篇文章介绍如何使用R读取并查看数据&#xff0c;包含一些最基础的函数使用方法和说明。后面还会陆续介绍数据清洗&#xff0c;匹配和提取等相关的操作。 查看函数帮助 对于新手来说&#xff0c;在使用R时最重要的是了解不同函数的使用方法。很多时候我们都是边用边学的状态&…

R语言如何从外部读取数据到R中

R语言可以从键盘&#xff0c;文本&#xff0c;excel&#xff0c;access&#xff0c;数据库&#xff0c;专业处理软件sas 一、使用键盘的输入 mydata<-data.frame(agenumeric(0),gendercharacter(0),weightnumeric(0)) mydata<-edit(mydata) 二、读入带有分隔符文本格式…

R语言入门——数据快速读取与查看(含实例代码和参数讲解)

R语言数据读取 介绍引言结构安排 数据读取函数文本数据readLines函数 键盘键入数据scan函数讲解 表格数据.xlsx文件介绍表格数据函数参数介绍 快速读入参数介绍竞赛数据练习2020美赛C题2019华为杯E题 数据查看函数表 介绍 引言 毕业季来临&#xff0c;很多小伙伴都在积极准备…

R语言读CSV、txt文件方式以及read.table read.csv 和readr(大数据读取包)

首先准备测试数据*(mtcars)分别为CSV. TXT **2018博客之星评选&#xff0c;如果喜欢我的文章&#xff0c;请投我一票&#xff0c;编号&#xff1a;No.009** [支持连接](https://blog.csdn.net/HHTNAN/article/details/85330758) ,万分感谢&#xff01;&#xff01;&#x…

R语言之读取文件夹的数据

读取文件路径&#xff1a;一层目录&#xff08;“示例”&#xff09;、二层目录&#xff08;“数据1”、“数据2”&#xff09;下的表格数据。 “示例”文件下&#xff1a; “数据1”文件下&#xff1a; “数据2”文件下&#xff1a; 读取文件夹 rm(listls()) #清除变量 …

R入门(一)----读取数据、查看数据

感谢大鹏dapengde 创建数据 #在相应位置新建文件夹 dir.create(E:/R/R lab/学R/r4r) #将数据文件存进文件夹 write.csv(as.data.frame(t(matrix(co2,12,dimnames list(month.abb,unique(floor(time(co2))) ) ))),file E:/R/R lab/学R/r4r/co2.csv)读取数据 R数据的导入与…

手把手教你用R语言读取CSV文件

导读&#xff1a;R语言有许多种方法去获取数据&#xff0c;最常用的是读取CSV文件。 作者&#xff1a;Jared P. Lander 来源&#xff1a;大数据DT&#xff08;ID&#xff1a;hzdashuju&#xff09; 读取CSV文件最好的方法是使用read.table函数&#xff0c;许多人喜欢使用read.c…

R语言中 数据读取与写入

R中其他读取: source #读取R代码 dget #读取R文件 load #读取工作空间 一。R语言读取文本文件(.txt) 在R语言中,读取文本文件的函数可以是:read.table()、scan()、read.fwf(),也可以将.txt转换为.csv或.xlsx文件用其他函数读取。 1. read.table() 参数解释: …

R语言——数据格式和数据读取

R语言——数据读取之详解 福尔摩斯曾说过:“数据,数据,没有数据的推理是罪恶!” 不过比起有意思的统计分析,数据的导入与导出显得十分的无趣,但是不得不说统计分析的数据导入与导出是个让人沮丧的任务,而且耗时巨大。 今天分享的是R数据的储存数据格式,及其R中数据的输…

2019-07-15_linux下vi复制粘贴

vi 环境块复制 1、shiftv 进入行选模式 2、上下箭头选中要复制的块 3、“y”复制 4、“p” 粘贴 转载于:https://www.cnblogs.com/wbly2019/p/11187370.html

linux ubuntu vim复制粘贴,关于vim的复制粘贴

今天被vim的复制粘贴弄得很烦,它不像windows那样,每次复制会把以前的内容覆盖。所以有时粘贴出来的东西并不是你想要的。 在不同终端中,用vim打开的两个文件之间的复制粘贴 1. 用同一个终端,直接使用这个命令: vim file1 file2 这样就可以直接用y和p复制粘贴了。 但是这样…

在windows或linux中使用VIM/VI复制粘贴内容命令及设置大全

在windows或linux中使用VIM/VI复制粘贴内容命令及设置大全 行复制&#xff1a; 【yy】复制光标所在行 【p】在光标位置粘贴复制的内容 多行复制&#xff1a; 【v】从当前位置进行可视化模式&#xff08;【Ctrlv】则进行可视化块选择&#xff09; 此时按上下左右箭头移动光标选…

使用pip安装pymysql

本人使用的python版本是3.6&#xff0c;该版本是自带有pip.可以直接通过pip工具进行安装pymysql: 第一步&#xff1a;找到pip.exe路径。 例如我安装的目录如下&#xff0c;自带的pip工具的python版本&#xff0c;在Scripts目录下都能够找到。 第二步&#xff1a;通过cmd进入命令…

pycharm中安装pymysql

进入pycharm终端&#xff0c;输入pip install pymysql进行安装