• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

R语言外部数据读取

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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界面的右下角就会出现其用法。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
R语言 多项式回归 polynomial regression发布时间:2022-07-18
下一篇:
R语言在Jupyter Notebook(Anaconda)中install packages发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap