输入和输出函数是编程语言与用户交谈和交互的能力。
我们学习R中的函数,这些函数允许我们从用户或文件中获取输入,并将输出显示到屏幕或将其存储在文件中。R具有许多功能,使这些任务变得非常简单。
使用R,我们可以使用简单易用的函数读取用户或文件的输入。同样,我们可以显示复杂的输出或使用相同的输出将其存储到文件中。R 的基本包具有许多这样的函数,并且有些包提供的函数可以执行相同的操作,并同时以所需的方式处理信息。
输入输出数据
输入
使用函数
read.table()函数是R最基本函数之一,主要用来读取矩形表格数据。
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 = FALSE,
fileEncoding = "", encoding = "unknown", text, skipNul = 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 = "", ...)
file:要从中读取数据的文件的名称。
header:一个逻辑值,指示文件是否包含变量的名称作为其第一行。
sep:字段分隔符,文件每行上的值由此字符分隔。
quote:用于对有特殊字符的字符串划定接线的字符串,默认值是TRUE(")或单引号。
dec:文件中用于小数点的字符。
numerals:字符串类型。用于指定文件中的数字转换为双精度数据时丢失精度的情况下如何进行转换。
row.names:行名的向量。这可以是给出实际行名的向量,也可以是给出包含行名的表列的单个数字,或者是给出包含行名的表列名称的字符串,如果缺少 row.name,则对行进行编号。
col.names:指定列名的向量。缺省情况下是又"V"加上列序构成,即V1,V2,V3......
as.is:该参数用于确定read.table()函数读取字符型数据时是否转换为因子型变量。当其取值为FALSE时,该函数将把字符型数据转换为因子型数据,取值为TRUE时,仍将其保留为字符型数据。
na.strings:要解释为 NA 值的字符串的字符向量。空白字段也被视为逻辑、整数、数字和复杂字段中的缺失值。
colClasses:用于指定列所属类的字符串向量。
nrows:要读入的最大行数,负值和其他无效值将被忽略。
skip:在开始读取数据之前要跳过的数据文件的行数
check.names:如果为 TRUE,则检查数据框中变量的名称,以确保它们在语法上有效。
fill:如果为 TRUE,则在行的长度不相等的情况下,自动添加空白字段。
strip.white:此参数只在指定了sep参数时有效。当此参数设置为TRUE时,数据文件中没有包围的字符串域的前边和后边的空格将会被去掉。
blank.lines.skip:如果为TRUE则忽略输入中的空行。
comment.char:包含单个字符或空字符的向量,代表注释字符的开始字符。
allowEscapes:类似“\n”这种C风格的转义符。如果这种转义符并不是包含在字符串中,该函数可能解释为字段分隔符。
flush:默认值为FALSE。当该参数值设置为TRUE时,则该函数读取完指定列数后将转到下一行。这允许用户在最后一个字段后面添加注释。
stringsAsFactors:标记处字符向量是否需要转化为因子,默认是TRUE。
fileEncoding:指定文件的编码方式。
encoding:假定输入字符串的编码方式。
text:当未提供file参数时,则函数可以通过一个文本链接从text中读取数据。
skipNul:是否忽略空值,默认为FALSE。
输出
write.table(data, file = "filename", append = F,
quote = T, sep = "\t",na = "NA", dec = ".",
row.names = T,col.names = T)
write.csv(...)
append = F 新写入的数据会将原始数据覆盖,T 则向后添加的方式继续写入;quote = T 字符型变量和因子型变量被双引号修饰;sep = "\t" 以制表符分隔;na = "NA" 用 NA 表示缺失值;dec 控制小数点字符;row.names/ col.names = T 将行/列名写入文件。
保存加载对象
保存
a <- 1
b <- 2
save(a,b,file = 'mydata.rdata')
加载
load('mydata.rdata')
保存图片
pdf(file = 'myplot.pdf')
plot(x = runif(n = 10 , 1, 100), y = runif(n = 10 , 1 , 100))
dev.off()
网友评论