在R語言中可以使用scan()函數(shù)從鍵盤或文件中讀取數(shù)據(jù)到向量或列表中。
scan()函數(shù)的語法格式如下:
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)
本篇文章僅介紹了,該函數(shù)的參數(shù)含義,如果想了解scan()函數(shù)的具體使用方法,請參見下面這兩篇文章:
R語言中使用scan()函數(shù)輸入數(shù)據(jù)
R語言中使用scan()函數(shù)讀取文件中的數(shù)據(jù)
參數(shù)含義描述如下:
(1)file
file參數(shù)用于指定要讀取文件的路徑和名字,如果為空或"",則是要從鍵盤中獲取數(shù)據(jù)。
如果指定的文件的名字使用的是相對路徑,則默認是從當前工作目錄中尋找文件(當前工作目錄可以使用getwd()函數(shù)獲取到);
如果指定了絕對路徑,則scan()函數(shù)要按照絕對路徑讀取文件。
(2)what
what用于給出要讀取的數(shù)據(jù)的類型,支持的數(shù)據(jù)類型包括:logical, integer, numeric, complex, character, raw以及l(fā)ist.
(3)nmax
是一個整型值,用于指定要讀取數(shù)據(jù)的最大數(shù)量,如果what被指定為列表(list),則nmax表示要讀取的最大記錄數(shù)或行數(shù),如果忽略nmax參數(shù),或該參數(shù)被指定為非負整數(shù),或者該參數(shù)被設定為無效值時(同時,nlines參數(shù)沒有被設定為負數(shù)時),scan函數(shù)將會讀取到該文件的末尾。
(4)n
是一個整型值,要讀取的數(shù)據(jù)的最大數(shù)量,默認情況下沒有限制。若指定無效的值,將會被忽略。
(5)sep
sep參數(shù)是用于指出文件中數(shù)據(jù)的分隔符,scan默認數(shù)據(jù)是以空白進行分隔,另外,也可以指定其它單個字符作為數(shù)據(jù)域的分隔符
(6)quote
用于指定包圍字符串的字符,該參數(shù)應該是一個單字符。
(7)dec
用于表示小數(shù)數(shù)點的字符,該參數(shù)只能是包含單個字符的字符串或零長度的字符串。默認為“.”。
(8)skip
用于指定讀取數(shù)據(jù)時,忽略文件前面的行數(shù)。
(9)nlines
指定要讀取文件中數(shù)據(jù)的最大行數(shù)。
(10)na.strings
字符向量。用于指定表示缺失數(shù)據(jù)時的字符串,默認為NA。在邏輯型、整數(shù)型、數(shù)值型和復數(shù)型數(shù)據(jù)域中,空白域也被看做缺失值。
(11)flush
是一個邏輯值,默認為FALSE。如果該參數(shù)設置為TRUE,則scan()函數(shù)讀取完指定列數(shù)后將轉到下一行。這允許用戶在最后一個字段后面添加注釋。
(12)fill
邏輯值。如果參數(shù)值設置為TRUE時,當行中的字段值少于字段數(shù)時,將以空白填充。
(13)strip.white
在sep參數(shù)已指定的情況下,如果為TRUE,則刪除字符型字段前后多余的空格。但包含在引用中的空白不會被刪除,同時數(shù)值型字段值前后的空白在任何情況下都會被去掉。
(14)quiet
是一個邏輯值,當設置為FALSE時,scan()函數(shù)將輸出一行信息,用于說明讀取了哪些項的信息。
(15)blank.lines.skip
是一個邏輯值 ,如果設置為TRUE,將忽略空白行
(16)multi.line
是一個邏輯值。只用于what參數(shù)是一個列表型參數(shù)時。當設置為FALSE時,每個記錄的字段都在一行中。
(17)comment.char
指定注釋開始的字符。一行中以這個字符開頭的部分將被忽略。默認關閉此項。
(18)allowEscapes
該參數(shù)是一個邏輯值,默認值為FALSE。表示在一個引用起來的字符串中,類似“/n”這樣的字符被解釋為轉義字符還是按原樣輸出(字面意義或逐字字符串)。若不在引號中,這樣的字符將視為字段分隔符。
(19)fileEncoding
字符串類型,指定文件的編碼方式。如果指定了該參數(shù),則文本數(shù)據(jù)按照指定的格式重新編碼。
(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
邏輯值。是否忽略空值。
本文(完)-如有問題,本文將持續(xù)修改完善。
新聞熱點
疑難解答