write.table(c, file = "C:/Users/Oliver/Desktop/foo.txt", row.names = F,col.names=F, quote = F) 1 首先用getwd() 获得当前目录,用setwd("C:/data")设定当前目录
2 数据保存 创建数据框d >d <- data.frame(obs = c(1, 2, 3), treat = c("A", "B", "A"), weight = c(2.3, NA, 9)) 2.1 保存为简单文本 >write.table(d, file = "c:/data/foo.txt", row.names = F, quote = F) # 空格分隔 >write.table(d, file = "c:/data/foo.txt", row.names = F, quote = F, sep="\t") # tab 分隔的文件 2.2 保存为逗号分割文本 >write.csv(d, file = "c:/data/foo.csv", row.names = F, quote = F) 2.3 保存为R格式文件 >save(d, file = "c:/data/foo.Rdata") 2.4 保存工作空间镜像 >save.image( ) = save(list =ls(all=TRUE), file=".RData")
3 数据读取 读取函数主要有:read.table( ), scan( ) ,read.fwf( ),readLines(). 3.1 用 read.table( ) 读 "c:\data” 下houses.dat >setwd("C:/data"); HousePrice <- read.table(file="houses.dat") 如果明确数据第一行做表头,则使用header选项 >HousePrice <- read.table("houses.dat", header=TRUE) read.table( ) 变形有: read.csv( ),read.csv2( ), read.delim( ), read.delim2( ).前两读取逗号分割数据,后两个读取其他分割符数据。 3.2 用scan( ) 比read.table( ) 更灵活。 但要指定 变量类型:如:C:\data\data.dat: M 65 168 M 70 172 F 54 156 F 58 163 >mydata <- scan("data.dat", what = list("", 0, 0)) >mydata <- scan("data.dat", what = list(Sex="", Weight=0, Height=0)) 3.3 用read.fwf( )读取文件中一些固定宽度数据 如:C:\data\data.txt: A1.501.2 A1.551.3 B1.601.4 >mydata <- read.fwf("data.txt", widths=c(1, 4, 3), col.names=c("X","Y","Z"))
4 excel格式数据读取 4.1 利用剪切板 选择excel数据,再用(CTRL+C)复制。在R中键入命令: >mydata <- read.delim("clipboard") 4.2 使用程序包 RODBC. 如: c:\data\body.xls Sex Weight Height M 65 168 M 70 172 F 54 156 F 58 163 > library(RODBC) > z <- odbcConnectExcel("c:/data/body.xls") > foo <- sqlFetch(z, "Sheet1") > close(z)
注意: 1 writeLines 会在最后一行/或者每行末尾加一个换行符
# fileConn<-file(output_fasta) 2 另外一个写文件的方法是sink,不会在行末加换行符
sink(output_fasta)
write is a wrapper for cat, which gives further details on the format used. save for writing any R objects, write.table for data frames, and scan for reading data. |
|