R语言:R语言文件IO操作

来源:互联网 发布:数据的完整性 编辑:程序博客网 时间:2024/06/05 08:06
  • 导入分隔符文件

    语法:  mydataframe <- read.table(file, header=logical_value,sep="delimiter", row.names="name")参数说明:     file 文件路径(包含文件名)     header 是否具有表头     sep 分隔符     row.names例子:setwd("d:\\data")grades <- read.table("studentgrades.csv", header=TRUE, sep=",")
  • 导入files目录下文本

    files=paste("files/",dir("files"),sep="")fs=c()for(i in 1:length(files))    fs[i] <- paste(readLines(files[i]),collapse="\n")          #按行读取文本文件,每一行用“\n”隔开rcorp <- Corpus(VectorSource(fs))   #把字符串生成corpus格式,VectorSource把字符串变成输入的文档格式,几个字符串就表示有几个文档
  • 导入词典

    install.packages('rJava')                                       #安装rJavainstall.packages("Rwordseg",repos="http://jliblog.com/crap")   #安装Rwordsegrequire(Rwordseg)                                               #加载system.time(for(i in 1:10000) segmentCN("setence"))installDict("E:/Download/userLibrary.dic")                      #导入词典(userLibrary.dic)options(dic.dir = "D:/day_file/R")                              #用户自定义字典loadUserDict()insertWords("sentence")                                         #添加removeWords("sentence")                                         #删除
  • 导入Excel数据

    library(xlsx)workbook <- "d:/data/tot.xlsx"mydataframe <- read.xlsx(workbook, 1 ,encoding='UTF-8')library(RODBC)  channel=odbcConnectExcel("d:/test.xls")  mydata=sqlFetch(channel,'Sheet1') # 如果是Excel2007格式数据则要换一个函数odbcConnectExcel2007 

    注:rJava安装之前需要配置Java环境变量
    JDK下载:http://pan.baidu.com/s/1eQrKIaA
    配置JAVA的环境变量: http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html

  • 保存和加载R的数据

    保存和加载R的数据(与R.data的交互:save()函数和load()函数)

    a <- 1:10  save(a, file = "data/dumData.Rdata") # data文件为当前工作目录下的文件,必须存在  rm(a)  load("data/dumData.Rdata")  print(a)  
  • 导入和加载.csv文件

    导入和加载.csv文件(write.csv()函数和read.csv()函数)

    var1 <- 1:5  var2 <- (1:5) / 10  var3 <- c("R", "and", "Data Mining", "Examples", "Case Studies")   a <- data.frame(var1, var2, var3)   names(a) <- c("VariableInt", "VariableReal", "VariableChar")   write.csv(a, "data/dummmyData.csv", row.names = FALSE)  b <- read.csv("data/dummmyData.csv") csv <- read.csv("tot5.csv",header=T, stringsAsFactors=F)         #header 第一行是否作为标题
  • 导入SPSS/SAS/Matlab等数据集

    # 导入spss的sav格式数据则要用到foreign扩展包,加载后直接用read.spss读取sav文件  library(foreign)  mydata=read.spss('d:/test.sav')  # 上面的函数在很多情况下没能将sav文件中的附加信息导进来,例如数据的label,  # 那么建议用Hmisc扩展包的spss.get函数,效果会更好一些。  library(Hmisc)  data=spss.get("D:/test.sav") 
  • 导入数据库中的数据

    library(RODBC)  Connection <- odbcConnect(dsn="servername",uid="userid",pwd="******")  Query <- "SELECT * FROM lib.table WHERE ..."  # Query <- readChar("data/myQuery.sql", nchars=99999) 或者选择从SQL文件中读入语句  myData <- sqlQuery(Connection, Query, errors=TRUE)  odbcCloseAll() 

    11/15/2014 2:43:13 PM

    参考文献:
    1.http://www.xiaowanxue.com/up_files/201212203744.html 
    2.http://www.dataguru.cn/article-1688-1.html