R语言外部数据读取

Posted 比较大的小仙女

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言外部数据读取相关的知识,希望对你有一定的参考价值。

0  引言

   使用R语言、Python等进行数据处理的第一步就是要导入数据(也可以使用UCI数据集),下文主要根据R语言的帮助文档来介绍外部文件数据的导入方法和注意事项。下面先附上一些指令。

1 格式read.table

  read.table(file, header = FALSE, sep ="", quote = "\\"\'",dec = ".", skip = 0,strip.white = FALSE, blank.lines.skip =TRUE,comment.char = "#")
  (1) file表示要读取的文件。file可以是
①绝对路径或者相对路径。一定要注意,在R语言中\\是转义符,所以路径分隔符需要写成"\\\\"或者“/”。
所以写成“C:\\\\myfile\\\\myfile.txt”或者“C:/myfile/myfile.txt”即可。
②使用file.choose(),弹出对话框,自动选择文件位置。例如:read.table(file.choose(),...)。

②使用剪切板导入。先excel文件copy到剪贴板,执行下面的语句,即可导入R

  read.table("clipboard",sep="\\t")  

Excel的文件中,每个单元格以制表符分隔,而sep=“\\t”的意思是,以制表符进行分割来读取数据。当剪贴的excel中有空格时,需使用sep=“\\t”,否则报错。 例如 

> dp<-read.table("clipboard",sep="\\t")  #使用剪切板导入数据
> dp #输出

显示结果如下:         

 

 

      (2) header来确定数据文件中第一行是不是标题。默认F,即认为数据文件没有标题,也即认为第一行就开始是数据了!例如:
name   age   income
Tom     22     8000
如果header=F,读进来的第一行数据是“name age income”,header=T,读进来的第一行是“Tom 22 8000”。
  (3)sep指定分隔符,默认是空格。quote是引号,默认就是双引号。dec是小数点的表示,默认就是一个点。skip是确定是否跳过某些行。strip.white确定是否消除空白字符。blank.lines.skip确定是否跳过空白行。comment.char指定用于表示注释的引导符号。
这是常用的参数设置,一般情况下,我们只需要默认值就够了。
下面是一个简单的例子,首行是标题而不是数据,使用“\\t”进行分割而不是空格。读取后的数据变量设为mydata。所以,可以写出读取方式为:
  mydata<-read.table(file.choose(),header=T,sep="\\t")
其中,T=TRUE,F=FALSE。

2 格式read.csv

  read.csv(file, header = TRUE, sep = ",",quote="\\"", dec=".",fill = TRUE,comment.char="")
注释:csv是逗号分割的意思,所以sep必须是逗号。header是默认有标题的。fill默认填充,即遇到行不相等的情况,空白域自动添加既定值。
如果使用默认的设置,可以使用写出:
  mydata2<-read.csv(file.choose())
 
3 格式read.xlsx
  这个在最开始的时候有写过,在这里就不再详细叙述了。
4 总结
  虽然读取文件的格式比较多,但是常用的比较少,把常用的熟悉了就可以。另外,多使用help语句和命令窗口输入“?函数”,查看右侧的提示即可减省很多时间,提高学习效率。
如输入“?read.table”,则在Rstdio界面的右下角就会出现其用法。

 

以上是关于R语言外部数据读取的主要内容,如果未能解决你的问题,请参考以下文章

在r语言中用啥命令读取全部数据

r语言只能读取excel的100行数据怎么办

R语言文件读取

r语言 读取xlsx文件,时间变成了43435 怎么解决?

如何用R读取数据

R语言读数据