zoukankan      html  css  js  c++  java
  • 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=" ")  

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

    > dp<-read.table("clipboard",sep=" ")  #使用剪切板导入数据
    > 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指定用于表示注释的引导符号。
    这是常用的参数设置,一般情况下,我们只需要默认值就够了。
    下面是一个简单的例子,首行是标题而不是数据,使用“ ”进行分割而不是空格。读取后的数据变量设为mydata。所以,可以写出读取方式为:
      mydata<-read.table(file.choose(),header=T,sep=" ")
    其中,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界面的右下角就会出现其用法。
  • 相关阅读:
    Linux、CentOS系统下调整home和根分区大小
    Dell服务器Raid卡电池策略调整
    自建Saltstack的repo软件源仓库
    CentOS6.6下DRBD+HeartBeat+NFS配置
    go vendor目录
    cmd/go: unsupported GOOS/GOARCH pair linux /amd64
    linux的单用户模式
    go import导入的理解
    监控系统整合告警平台实现邮件、短信、微信、电话语音和app等多方式报警
    如何以非交互方式为psql指定密码?
  • 原文地址:https://www.cnblogs.com/babyfei/p/9028502.html
Copyright © 2011-2022 走看看