R语言学习之读写文件

编程入门 行业动态 更新时间:2024-10-09 05:22:34

R<a href=https://www.elefans.com/category/jswz/34/1770116.html style=语言学习之读写文件"/>

R语言学习之读写文件

R语言学习之读写文件

一、获取数据

R获取数据三种途径

1、利用键盘来输入数据

> patient <- c(1,2,3,4)
> admdte <- c("10/15/2009","11/01/2009","10/21/2009","10/28/2009")
> age <- c(25,34,28,52)
> diabetes <- c("Type1","Type2","Type1","Type1")
> status <- c("Poor","Improved","Excellent","Poor")
> data <- data.frame(patient,age,diabetes,status)
> datapatient age diabetes    status
1       1  25    Type1      Poor
2       2  34    Type2  Improved
3       3  28    Type1 Excellent
4       4  52    Type1      Poor

同时也可以利用edit()函数直接输入

> data2 <- data.frame(patient=character(0),admdte=character(0),age=numeric(),diabetes=character(),status=character())
> data2 <- edit(data2)

除此之外,还可利用fix()函数直接修改,可直接保存

fix(data2)

2、通过读取存储在外部文件上的数据(暂略)

3、通过访问数据库系统来获取数据

1)通过ODBC访问数据库

install.package("RODBC")

二、读入文件

1、读取本地文件

read.table(file, header = FALSE, sep = “”, quote = “”’",
    dec = “.”, numerals = c(“allow.loss”, “warn.loss”, “no.loss”),
   row.names, col.names, as.is = !stringsAsFactors,
   na.strings = “NA”, colClasses = NA, nrows = -1,
   skip = 0, check.names = TRUE, fill = !blank.lines.skip,
   strip.white = FALSE, blank.lines.skip = TRUE,
   comment.char = “#”,
   allowEscapes = FALSE, flush = FALSE,
   stringsAsFactors = default.stringsAsFactors(),
   fileEncoding = “”, encoding = “unknown”, text, skipNul = FALSE)

  • file:文件名
> x <- read.table ("input.txt")
>head(x)
>tail(x)    #查看头或尾部,默认为6行,也可加参数
>head(x,n=10)
  • sep 设置分隔符
> x <- read.table ("input.csv",sep=",")
  • header 是否将第一行视为变量名称,是设为T,否则为F

  • skip 跳过内容

> x <- read.table ("input 1.txt",sep=",",header = T,skip = 5)
  • nrows 读取行数
x <- read.table ("input.csv",sep=",",header = T,nrows = 100)
x <- read.table ("input.csv",sep=",",header = T,skip = 50,nrows = 100)
  • ns.strings 将缺失值替换为NA
x <- read.table ("input.csv",sep=",",header = T,skip = 50,nrows = 100, na.strings = " ")
  • stringAsFactors 控制字符串是否转换为因子,不需要时设为false
其他函数

read.csv(file, header = TRUE, sep = “,”, quote = “”", dec = “.”, fill = TRUE, comment.char = “”, …)

read.csv2(file, header = TRUE, sep = “;”, quote = “”",dec = “,”, fill = TRUE, comment.char = “”, …)

read.delim(file, header = TRUE, sep = “\t”, quote = “”",dec = “.”, fill = TRUE, comment.char = “”, …)

read.delim2(file, header = TRUE, sep = “\t”, quote = “”",dec = “,”, fill = TRUE, comment.char = “”, …)

2、读取网络文件

文件在局域网内的地址
x <- read.table("", header = TRUE)
读取HTML内的表格

需要安装XML包

install.packages("XML")
?readHTMLTable

readClipboard() 读取剪切板文件

readLines() 按行读取文件

x <- readLines("input.txt",n=100)

scan() 按单元读取数据

x <- scan("scan.txt",what=list (character(3),numeric(0),numeric(0)))x <- scan("scan.txt",what=list (X1=character(3),X2=numeric(0),X3=numeric(0)))

三、写入文件

write.table()

  • x 写入的数据
  • file 要写的文件
  • sep 分隔符
  • row.names=False 不会将R语言添加的行号写入文件
  • quote = False 不需要双引号
  • na 调整缺失值
  • append 是否追加写入,若为否可能覆盖原文件
  • gzfile (newfile.csv.gz) 生成压缩文件
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 (x,file=gzfile (newfile.csv.gz),sep="\t",quote=FALSE,append=FALSE,na="NA")
library(foreign)
write.arff()

四、读写Excel文件

1、另存为csv文件后利用read.csv()读取

2、复制到剪切板后利用readClipboard()读取

3、利用XLConnect包

install.package(XLConnect)
library(XLConnect)#Two step Read Excel File
ex <- loadWorkbook("data.xlsx")
readWorksheet(ex,1)     #1代表第一个工作表,以此类推
edata <- readWorksheet(ex,1,startRow=0,starCol=0,endRow=50,endCol=3)#One step Read Excel File
readWorksheetFromFile ("data.xlsx",1,startRow=0,starCol=0,endRow=50,endCol=3,header=TRUE)

1)、四步法写文件

#Four step Wtire Excel File
wb <- loadWorkbook("file.xlsx",create=TRUE)       #创建一个文件
createSheet(wb,"Sheet 1")                         #创建工作表
writeWorksheet(wb,data=mtcars,sheet = "Sheet 1")  #写入文件
saveWorkbook()

2)、一步写文件

#One step Wtire Excel File
writeWorksheetToFile("file.xlsx",data = mtcars,sheet = "Sheet 1")vignette("XLConnect")   #查看XLConnect包帮助文档

4、利用xlsx包读写

install.packages("xlsx")
library(xlsx)
rdata <- read.xlsx("data.xlsx",n=1,startRow = 1,endRow = 100)
write.xlsx(rdata,file = "rdata.xlsx",sheetName = "Sheet 1",append = F)
help(package="xlsx")

五、读写R格式文件

1、RDS文件

saveRDS(iris,file="iris.RDS")
rdsdata <- readRDS("C:/Users/wangtong/Desktop/RData/iris.RDS")

2、RData文件

#Write RData file
load(file = "C:/Users/wangtong/Desktop/RData/Ch02.R")
save(iris,iris3,file = "iris.Rdata")
save.image()

veRDS(iris,file=“iris.RDS”)
rdsdata <- readRDS(“C:/Users/wangtong/Desktop/RData/iris.RDS”)


### 2、RData文件```R
#Write RData file
load(file = "C:/Users/wangtong/Desktop/RData/Ch02.R")
save(iris,iris3,file = "iris.Rdata")
save.image()

更多推荐

R语言学习之读写文件

本文发布于:2024-02-07 05:56:53,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754429.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:语言   文件

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!