目錄: 文本輸出 圖形輸出 數據輸入 數據框輸出 文本導入 Excel導入 文本輸出 語法: sink(file = NULL, append = FALSE, type = c("output", "message"), split = FALSE) 示例代碼: setwd("E:\\R") si ...
目錄:
- 文本輸出
- 圖形輸出
- 數據輸入
- 數據框輸出
- 文本導入
- Excel導入
文本輸出
- 語法: sink(file = NULL, append = FALSE, type = c("output", "message"), split = FALSE)
- 預設情況,如果文件已經存在,則內容會被覆蓋,如果 append = TRUE 可以將文本追加到文件後
- split = TRUE 可將輸出同時發送到屏幕和輸出文件中
- sink():結束重定向
- 示例代碼:
setwd("E:\\R") sink(file = "hello.txt",append = TRUE) cat("Test Sink output") sink()
-
註意:sink()對圖形輸出沒有影響
圖形輸出
- 圖形輸出使用如下的函數,最後使用dev.off()將輸入結果返回終端
- 矢量圖形(PDF,PostScript,SVG), 點陣圖(PNG,JPEG, TIFF)
- 示例代碼:
pdf("demo.pdf") png("demo1.png") attach(mtcars) plot(wt,mpg) title("pdf graphics demo") detach(mtcars) dev.off()
數據輸入
- 通過鍵盤輸入數據兩種常見方式:R內置的文本編輯器和代碼中直接嵌入數據
- 通過edit()函數會自動調用一個允許手工輸入數據的文本編輯器
- 示例代碼:
mydata <- data.frame(name=character(0),age=numeric(0),weight=numeric(0)) mydata <- edit(mydata)
-
執行代碼,彈出編輯器如下圖:
- 關閉彈出框後,查看mydata結果如下:
> mydata name age weight 1 張三 12 42 2 李四 14 56 >
數據框輸出
- 上例中將mydata 數據框對象保存本地 .rda文件,同時載入數據代碼示例如下:
- save(mydata,file = "mydata.rda")
- 如下圖:
- 載入本地mydata.rda文件示例代碼如下:
> remove(list=ls()) > load(file = "mydata.rda") > mydata name age weight 1 張三 12 42 2 李四 14 56
文本導入
- read.table() 從帶分隔符的文本文件中導入數據,生成數據框對象
- 示例代碼:
mydata <- read.table("d:\\data.txt",col.names = c("region","Name")) mydata
-
導入文件後結果如下:
- 導入註意事項:
- 導入時預設把字元變數轉化為因數,若不希望這樣,則設置:stringAsFactors = FALSE
- 若對導入的每一列指定一個類,可使用 colClasses , 如:colClasses = c("character","character","numeric")
Excel導入
- 方法一:將Exce導出為逗號分隔的csv文件,使用read.table()導入數據
- 使用xlsx包直接導入Excel工作表(需要先安裝xlsxjars和rjava包)
- 線上安裝 xlsx 包: install.packages("xlsx")
- 示例代碼:
library(xlsxjars) library(xlsx) mydata <- read.xlsx("work.xlsx",sheetIndex = 1) mydata
-