R数据导入导出: read.table()和read.csv()的区别

Posted elfodigger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R数据导入导出: read.table()和read.csv()的区别相关的知识,希望对你有一定的参考价值。

之前也参考过一些资料,虽然是这么简单的两个buildin,还是仔细对比了一下,我有两张txt,都是从cube中导出的,就意味着每一列的列数是不一样的。R语言官方文档中有这样一句话不知道大家注意到了没有:

技术分享图片

意思是说,R语言对于导入的格式要求非常严格,可以说是不灵活的;简而言之就是更希望的是格式在外部编辑好再导入。

那上面的需求能否做到,我们发现不管是逗号格式还是空格格式,都可以成为read.table()和read.csv()的数据源,那么区别就在于列数不对等这个需求了,对于read.table()严格要求所有列都对等,而read.csv()并不要求,后者会按最大列,或指定的列数填充,空串可指定相应的字符或数字填充。

技术分享图片

这里不得不提到一个skip参数,例如例子中的skip=1,如果从第二行开始列数完全对齐,是可以导入成功的。

上例中的read.table(...)改为read.csv(...)可成功导入数据。

*注:

  1. 如果有数值,则最好按需设定格式
  2. 返回都是data.frame mode

技术分享图片

 

以上是关于R数据导入导出: read.table()和read.csv()的区别的主要内容,如果未能解决你的问题,请参考以下文章

R语言read csv导入后,数据变了

求解:怎么将r软件内的数据转换为excel数据?

如何将R语言中的表格数据输出为Excel文件

R语言中这个时间处理怎么回事啊?用read.table()导入数据,用cor()分析

20190325-R语言读取数据之read.table()

R 函数笔记 read.table()函数