在R语言中可以使用scan()函数从键盘或文件中读取数据到向量或列表中。
scan()函数的语法格式如下:
scan(file = "", what = double(0), nmax = -1, n = -1, sep = "", quote = if(identical(sep, "/n")) "" else "'/"", dec = ".", skip = 0, nlines = 0, na.strings = "NA", flush = FALSE, fill = FALSE, strip.white = FALSE, quiet = FALSE, blank.lines.skip = TRUE, multi.line = TRUE, comment.char = "", allowEscapes = FALSE, fileEncoding = "", encoding = "unknown",text, skipNul = FALSE)
本篇文章仅介绍了,该函数的参数含义,如果想了解scan()函数的具体使用方法,请参见下面这两篇文章:
R语言中使用scan()函数输入数据
R语言中使用scan()函数读取文件中的数据
参数含义描述如下:
(1)file
file参数用于指定要读取文件的路径和名字,如果为空或"",则是要从键盘中获取数据。
如果指定的文件的名字使用的是相对路径,则默认是从当前工作目录中寻找文件(当前工作目录可以使用getwd()函数获取到);
如果指定了绝对路径,则scan()函数要按照绝对路径读取文件。
(2)what
what用于给出要读取的数据的类型,支持的数据类型包括:logical, integer, numeric, complex, character, raw以及list.
(3)nmax
是一个整型值,用于指定要读取数据的最大数量,如果what被指定为列表(list),则nmax表示要读取的最大记录数或行数,如果忽略nmax参数,或该参数被指定为非负整数,或者该参数被设定为无效值时(同时,nlines参数没有被设定为负数时),scan函数将会读取到该文件的末尾。
(4)n
是一个整型值,要读取的数据的最大数量,默认情况下没有限制。若指定无效的值,将会被忽略。
(5)sep
sep参数是用于指出文件中数据的分隔符,scan默认数据是以空白进行分隔,另外,也可以指定其它单个字符作为数据域的分隔符
(6)quote
用于指定包围字符串的字符,该参数应该是一个单字符。
(7)dec
用于表示小数数点的字符,该参数只能是包含单个字符的字符串或零长度的字符串。默认为“.”。
(8)skip
用于指定读取数据时,忽略文件前面的行数。
(9)nlines
指定要读取文件中数据的最大行数。
(10)na.strings
字符向量。用于指定表示缺失数据时的字符串,默认为NA。在逻辑型、整数型、数值型和复数型数据域中,空白域也被看做缺失值。
(11)flush
是一个逻辑值,默认为FALSE。如果该参数设置为TRUE,则scan()函数读取完指定列数后将转到下一行。这允许用户在最后一个字段后面添加注释。
(12)fill
逻辑值。如果参数值设置为TRUE时,当行中的字段值少于字段数时,将以空白填充。
(13)strip.white
在sep参数已指定的情况下,如果为TRUE,则删除字符型字段前后多余的空格。但包含在引用中的空白不会被删除,同时数值型字段值前后的空白在任何情况下都会被去掉。
(14)quiet
是一个逻辑值,当设置为FALSE时,scan()函数将输出一行信息,用于说明读取了哪些项的信息。
(15)blank.lines.skip
是一个逻辑值 ,如果设置为TRUE,将忽略空白行
(16)multi.line
是一个逻辑值。只用于what参数是一个列表型参数时。当设置为FALSE时,每个记录的字段都在一行中。
(17)comment.char
指定注释开始的字符。一行中以这个字符开头的部分将被忽略。默认关闭此项。
(18)allowEscapes
该参数是一个逻辑值,默认值为FALSE。表示在一个引用起来的字符串中,类似“/n”这样的字符被解释为转义字符还是按原样输出(字面意义或逐字字符串)。若不在引号中,这样的字符将视为字段分隔符。
(19)fileEncoding
字符串类型,指定文件的编码方式。如果指定了该参数,则文本数据按照指定的格式重新编码。
(20)encoding
对输入的非ASCII字符按照指定的编码格式编码。
(21)text
字符串类型。if file is not supplied and this is, then data are read from the value of text via a text connection.
(22)skipNul
逻辑值。是否忽略空值。
本文(完)-如有问题,本文将持续修改完善。
新闻热点
疑难解答