美文网首页
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