R語言入門——筆記(三)建立資料集
第一部分:資料結構
1.建立向量:c()
c(…, recursive = FALSE, use.names = TRUE)
根據元素座標訪問
2.建立矩陣:matrix()
matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL)
使用下標訪問矩陣元素
3.建立陣列:array()
array(data = NA, dim = length(data), dimnames = NULL)
4.建立資料框:data.frame()
data.frame(…,
row.names = NULL,
check.rows = FALSE,
check.names=TRUE,
stringsAsFactors = default.stringsAsFactors())
訪問資料框元素
還有attach()、detach()和with()方法。
5建立因子:factor()
factor(
x = character(),
levels, labels = levels,
exclude = NA,
nmax = NA)
因子的使用
顯示物件結構
顯示物件統計概要
6.建立列表:list()
list(x, all.names = FALSE, sorted = FALSE, …)
第二部分:輸入資料
1.鍵盤輸入:edit()
edit(name = NULL, file = “”, title = NULL,
editor = getOption(“editor”), …)
2.從帶分隔符的ASCII文字檔案匯入資料:read.table()
read.table(file,
header = FALSE,
sep = “”,
quote = “\”’”,
dec = “.”,
numerals = c(“allow.loss”, “warn.loss”, “no.loss”),
col.names,
as.is = !stringsAsFactors,
na.strings = “NA”,
colClasses = NA, nrows = -1,
check.names = TRUE,
fill = !blank.lines.skip,
strip.white = FALSE,
blank.lines.skip = TRUE,
comment.char = “#”,
flush = FALSE,
stringsAsFactors = default.stringsAsFactors(),
fileEncoding = “”,
text, skipNul = FALSE)
3.匯入excel檔案:RODBC包中的odbcConnectExcel()
odbcConnectExcel(xls.file, readOnly = TRUE, …)
載入RODBC包,odbc連線MicrosoftOffice
讀取2007Office的xlsx檔案,可以用XLSX包下的read.xlsx()
read.xlsx(file, sheetIndex, sheetName=NULL, rowIndex=NULL,
startRow=NULL, endRow=NULL, colIndex=NULL,
as.data.frame=TRUE, header=TRUE, colClasses=NA,
keepFormulas=FALSE, encoding=”unknown”, …)
載入xlsx包
4.匯入網頁內容:readLines()
在Web資料抓取(Webscraping)的過程中,使用者從網際網路上提取嵌入在網頁中的資訊,並將
其儲存為R中的資料結構以做進一步的分析。完成這個任務的一種途徑是使用函式readLines()
下載網頁,然後使用如grep()和gsub()一類的函式處理它。對於結構複雜的網頁,可以使用
RCurl包和XML包來提取其中想要的資訊。更多資訊和示例,請參考可在網站Programming with R
(www.programmingr.com)上找到的“Webscraping using readLines and RCurl”一文。
5.匯入SPSS,SAP內容:
SPSS:oreign包中的函式read.spss()和Hmisc包中的spss.get()
SAP:foreign包中的read.ssd()和Hmisc包中的sas.get()
6.訪問資料庫管理系統
ODBC介面(以mysql為例)
*1 安裝匹配系統和資料庫的odbc驅動
*2 載入RODBC包
函式 | 描述 |
---|---|
odbcConnect(dsn,uid=”“,pwd=”“) | 建立一個到odbc的連線 |
sqlFetch(channel,sqltable) | 讀取odbc資料庫中某個表到一個數據框中 |
sqlQuery(channel,query) | 向odbc資料庫提交一個查詢並返回結果 |
sqlSave(channel,mydf,tablename)=sqtable,append=FALSE | 將資料框寫入或更新(append=TRUE)到odbc資料庫的某個表中 |
sqlDrop(channel,sqtable) | 刪除odbc資料庫中的某個表 |
close(channel) | 關閉連線 |
第三部分 常用函式
函式 | 用途 |
---|---|
length(object) | 顯示物件元素/成分數量 |
dim(object) | 顯示物件維度 |
str(object) | 顯示物件結構 |
class(object) | 顯示物件的類或型別 |
mode(object) | 顯示物件模式 |
names(object) | 顯示物件中成分名稱 |
c(object,obj,…) | 將物件合併入一個向量 |
cbind(obj,obj,… | 按列合併物件 |
rbind(obj,obj,…) | 按行合併物件 |
object | 輸出該物件 |
head(obj) | 列出物件開始部分 |
tail(obj) | 列出物件結尾部分 |
ls() | 顯示當前物件列表 |
rm(obj,obj,…) | 刪除物件 |
newobject <- edit(obj) | 編輯物件並另存為newobj |
fix(obj) |