資料的輸入與輸出之Scan函式

2021-08-04 07:49:10 字數 1717 閱讀 4892

前面系列文章,介紹了r語言中的幾種資料格式;其它特殊的資料格式將在後續的文章中介紹,接下來的幾篇文章,將討論如何從外部中讀入資料或者將其它格式的資料讀入到r環境中;

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

, encoding = "unknown"

)

一、主要的引數說明如下:

1)  what:宣告讀入為字元型別資料,可能指定讀入的精度/型別,例如:what=integer

(0);what=numeric(0);what=character(0);

如果scan()讀入有字元與數字,用what=""來進行宣告,則會把讀入的數字隱式的都轉變成字元;

2)  sep:指定各個讀入的資料之間的分隔符;預設情況下分隔符:空格、tab;如果不是其它分隔符,例如「:/」通過sep來指定;

3

)  可以通過list

指定讀入變數的變數名,同時生成的物件為列表,則可以同時讀入字元與數字;

4)  skip 從第幾行開始讀入資料;

5)  nlines 指定最大讀入行數;

6

)  如果通過鍵盤輸入的時候,不希望出現下標提示,則可以使用:quiet=true

7

)  encoding

=」」指定的編碼格式,有時候讀入的中文可能會出現亂碼的時候,可能通過這個引數來指定:latin-1

或者 utf-8

二、scan幾點注意:

1)    用於讀入純字元或者數字,沒有表頭;

2)    如果輸入的單一型別的變數,例如均是:數值或者均是字元,用scan效率更高。但其不能讀入混合型別的資料,也就是在scan()讀入的必須同為字元或者同為數值;

3)    預設情況下用scan讀入的資料生成向量型別(這也就是為什麼讀入的資料必須是同為字元或者同為數字)

函式的輸入與輸出

1 格式化的輸入函式 printf printf 格式控制字串 輸出表列 1 格式控制字串 轉義字元 字元形式 含義 asc ii a 響鈴 7 n 換行,將當前位置移到下行開頭 10 t水平製表 跳到下乙個tab位置 9 b 退格,將當前位置移到前一列 8 r回車,將當前位置移到本行開頭 13 f...

資料的輸入與輸出

資料的輸入與輸出 資料型別 1 為了更方便的進行運算。2 更合理的進行記憶體分配。資料分類 int 直接轉為二進位制形式進行儲存。float 分為小數部分與指數部分以二進位制形式儲存。char ascii轉換成為數字以二進位制形式儲存。定義常量 define 名字 資料 變數 命名規則 1 只能由數...

MATLAB的輸入與輸出函式

輸出2.fprintf 由於 matlab不使用 stdin 和 stdout,而是使用command window進行互動。因此不需要使用 scanf 和 printf 等 c c 函式來提示使用者進行輸入。但在某些情況下需要提示使用者進行輸入並列印相關結果時,可使用如下函式。matlab中使用i...