関数
| 説明
| 使用例
|
cat
|
- 入力画面にもファイルにも出力できる.
- 出力対象はいくつも , で区切って並べられる
- 出力対象は文字列.
- 文字列以外のオブジェクトを渡すと,可能なかぎり文字列に自動変換.
- 最後に改行コードがつかない
- 文字列に,二重引用符 "" はつかない
|
x <- mean(d$width)
# 書きたいものを並べる.
# 最後に改行コード \n も出力させる.
cat("mean = ", x, "\n") # 画面に出力
# ファイル result.txt に出力.
# すでにファイルがあるなら末尾に追加.
cat("mean = ", x, "\n", file = "result.txt, append = TRUE)
|
write
|
- ファイルに出力.
- 出力対象はひとつのみ
- ふつうは行列の出力に使う
- 最後に改行コードを出力
- 文字列は二重引用符 "で囲まれる
|
x <- mean(d$width)
# result.txt に出力.
# すでにあるなら,末尾に追加.
write (x, file = "result.txt", append = TRUE)
|
write.table
|
- ファイルに出力.
- 行列やデータフレームの出力に使う
- 最後に改行コードを出力
- データ間の区切りは sep で指定(デフォルトだと空白)
-
|
d <- read.table('len_width.txt', header = TRUE)
d$wwl <- d$width ^ 2 * d$len # width の二乗 x length
# 新しく加わった列も含めて出力
# 因子を引用符で囲わない(quote = FALSE)
# 行の名前(番号)を出力しない(row.names = FALSE)
write.table (d, file = "len_width2.txt", sep = "\t",
quote = FALSE, row.names = FALSE)
|
writeLines
|
- 出力先は file()で作成した connectionを指定.
- 出力対象は文字列のベクトル
- 文字列ごとに改行コードを付加(変更可能)
- 作業後, connection を close() で閉じる.
|
x <- mean(d$width)
# result.txt への connection を作成(付加モード)
out.file <- file("result.txt", open = "a")
x_str <- sprintf("width\t%.2f", x)
writeLines(x_str, out.file)
close(out.file)
|
print
|
- 入力画面への出力用.
- 出力対象はひとつのみ
- オブジェクトを渡すと,その内容を適当に出力.
- 最後に改行コードを出力
- 文字列は二重引用符 "で囲まれる (quote = FALSE を指定すれば引用符なし)
- ベクトルの要素番号も自動的に出力
- sink ()と組み合わせれば,ファイル出力にも使える.
|
x <- mean(d$width)
print (x) # 入力画面へ出力.
# ファイル result.txt を出力先に.
sink('result.txt', append = TRUE)
print (x) # ファイル result.txt へ出力
sink() # 出力先を入力画面へ戻す
|
sink
|
- ふつうは画面に出力される内容が,指定ファイルに書き込まれるように設定する
- 引数なしで呼び出せば,その前の sink 設定が取り消される.
|
# 使用例は上の print の例を参照.
|
print は,渡したオブジェクトの種類に応じて適当な形式で出力してくれます.
実は,print という関数には実体がありません.実際には,
オブジェクトの種類に応じて用意されている 100 個以上の関数 のどれかが
呼び出されます.