美文网首页
R基础五(获取数据二)

R基础五(获取数据二)

作者: 多啦A梦的时光机_648d | 来源:发表于2020-02-23 13:18 被阅读0次

一:读取网络文件

1. 网络的文本文件

file = read.table("http/ftp协议的网络地址",header=T)

2.网路的非文本文件

例如读取html中的文件,就可以利用HML包,里面包含一个readHTMLTable的函数读取网页中的数据。其中which参数可以指定下载第几个表格。

install.packages("XML")
require(XML)
file = readHTMLTable("网址",which = 3)  ## which=3指下载第三个表格。

3.R的foreign包

这个包可以读取很多类似SAS,SPSS数据。
[图片上传中...(image.png-6a3dc6-1582356467798-0)]


foreigon包

如果遇到其他格式的文件,不在foreign包中,第一是另存为文本文件,第二就是搜索R中对应的包。

RSiteSearch("matlab")   ##比如搜索matlab包

同时R支持读取剪切板的数据。或者直接用readclipborad()不加任何参数

> file = read.table("clipborad",header = T,sep = ',')
> file = readclipborad()

R可以直接读取zip文件,不用解压

> read.table(gzfile("input.txt.gz"))

4.其他不标准的文件

readLines函数处理,读取每一行,并以字符串的形式返回结果。设置n限制读入的行数,
scan函数处理,what指定读取文件的内容的类型(numeric/character等)。

二:写入文件

1. 用write函数写入纯文本文件

1.write(对象名,file = '新文件名')
2.在写入和读取文件时会自动添加行号,所以在反复读取写入这会生成很多行号,则用rownames= FALSE设置为不添加行号。
3.默认情况下,read函数会为字符串添加双引号,可以用quote = FALSE去掉双引号。
4.如果目录下有同名文件,则会默认覆盖源文件,要是想讲文件写入到同一个文件,则可以用append函数,表示是否追加写入,append=TURE表示追加到结尾,append=FALSE表示清空原文件。
5.R也支持直接写入压缩文件,用对应的压缩函数,同时也可以写入为foreign包里面的文件格式。

write.table(x,file = "newfile.txt")
write.table(x,file = "newfile.csv",sep = '\t')
write.table(x,file = "newfile.csv",sep = '\t', quote=FALSE, append= FALSE, na = 'NA')
write.table(mtcars,file = gzfile("newfile=mtcats.txt.gz"))

相关文章

网友评论

      本文标题:R基础五(获取数据二)

      本文链接:https://www.haomeiwen.com/subject/ygulqhtx.html