在win32位的系統下,RODBC包內的函數是可以直接運行的,但在win64位的系統則不支持!
1.讀取外部文件read.table()---csv,txt,excel
最基本函數是read.table(),先介紹read.table(),然后再介紹專門用來讀csv的read.csv().
Description
Reads a file in table format and creates a data frame from it, with cases corresponding to lines and variables to fields in the file.
讀取一個表格形式的文件,並創建一個相應的數據框,同時可以保留相應的變量和觀測.
Usage
read.table(file, header = FALSE, sep = "", quote = "\"'", dec = ".", numerals = c("allow.loss", "warn.loss", "no.loss"), row.names, col.names, as.is = !stringsAsFactors,
na.strings = "NA", colClasses = NA, nrows = -1, skip = 0, check.names = TRUE, fill = !blank.lines.skip, strip.white = FALSE, blank.lines.skip = TRUE, comment.char = "#",
allowEscapes = FALSE, flush = FALSE, stringsAsFactors = default.stringsAsFactors(), fileEncoding = "", encoding = "unknown", text, skipNul = FALSE)
但常用的就只有幾個參數,重寫如下:
read.table(file, header = FALSE, sep = "", quote = "\"'", dec = ".", skip = 0, strip.white = FALSE, blank.lines.skip = TRUE, comment.char = "#")
①file表示要讀取的文件。file可以是絕對路徑或者相對路徑,但是一定要注意,因為在R語言中\是轉義符,所以路徑分隔符必須寫成\\,比如“C:\\myfile\\myfile.csv”.
②可以使用剪切板的內容,可以用於讀取excel格式的文件,將要讀取的數據進行復制,然后在R中輸入data=read.table("clipboard",T)即可.
③使用file.choose(),彈出對話框,讓你選擇文件位置。強烈推薦使用此種方法,免去了記憶和書寫文件路徑的麻煩,特別是能夠避免因數據文件位置移動帶來的錯誤!
例如:read.table(file.choose(),...).
④sep指定分隔符,默認是空格,若讀取csv文件,則必須設置成逗號,才能以逗號為分割形成數據框!quote是引號,默認就是雙引號。dec是小數點的表示,默認就是一個點。skip是確定是否跳過某些行。strip.white確定是否消除空白字符。blank.lines.skip確定是否跳過空白行。comment.char指定用於表示注釋的引導符號。
⑤header來確定數據文件中第一行是不是標題。默認F,即認為數據文件沒有標題,也即認為第一行就開始是數據了!
2.讀取外部文件read.csv()---csv
和read.table有所不同的,是read.csv的默認參數有別。注意看,header和sep的默認值。
read.csv(file, header = TRUE, sep = ",", quote="\"", dec=".",fill = TRUE, comment.char="")
因為csv就是逗號分割的意思,當然sep必須是逗號。header也是默認有標題的。fill是默認填充的,即遇到行不相等的情況,空白域自動添加既定值。
如果使用默認的設置,可以寫出:mydata2<-read.csv(file.choose()),十分簡單。
對於讀取剪切板的方式,不推薦使用。我們之所以使用讀取文件,就是增加程序的可復用性,而讀剪切板顯然是破壞了這種初衷的。因此,不到萬不得已,盡量使用文件路徑或者文件選擇的形式。