R語言 數據Excel的導入與導出
在入門學習之前在猶豫著該怎麼學習,在尋找方法浪費了很多時間,有時方法確實很重要,但是需要適合自己才有用。R語言實戰入門現在踏出一步,讓我意識到尋找方法還不如現在去做,去實踐。在練習過程中確實會遇到困難,想到後面的學習肯定會越來越難,有些恐懼,不管怎麼樣,只好一步步前進,到最後才知道結果怎樣。
數據結構實踐學習了存儲數據的多種結構的概念和用法,以及數據的導入和導出。
程序=數據結構+演算法
R語言的數據結構=蓋房子的材料=用於存儲數據
一、存儲數據的概念
向量是用於存儲數值型、字元型或邏輯型數據的一維數組。單個向量中的數據必須
擁有相同的類型或模式(數值型、字元型或邏輯型),用c() 來創建向量。
矩陣是一個二維數組,只是每個元素都擁有相同的模式(數值型、字元型或邏輯型)。可通過函數 matrix() 創建矩陣。
myymatrix <-matrix(vector, nrow=number_of_rows, ncol=number_of_columns,
byrow=logical_value,dimnames=list(
char_vector_rownames,char_vector_colnames))
其中 vector 包含了矩陣的元素, nrow 和 ncol 用以指定行和列的維數, dimnames 包含了可選的、以字元型向量表示的行名和列名。選項 byrow 則表明矩陣應當按行填充( byrow=TRUE )還是按列填充( byrow=FALSE ),默認情況下按列填充。
數組(array)與矩陣類似,但是維度可以大於2。數組可通過 array 函數創建,形式如下:
myarray <-array(vector, dimensions, dimnames)
其中 vector 包含了數組中的數據, dimensions 是一個數值型向量,給出了各個維度下標的最大值,而 dimnames 是可選的、各維度名稱標籤的列表。
二、R導入excel數據的三種方式:
1.在Excel中導出一個逗號分隔符csv文件,將csv文件存放在當前工作目錄下。
2.使用xlsx包導入(需要注意編碼和路徑問題)
首先用install.package()安裝需要的包xlsxjars和rJava包(要先安裝好jdk,配置環境變數)
以上出現亂碼,文件的編碼方式應該與encoding一致(因為Excel一般默認GB2312)
3.利用read.csv(file.choose())導入數據,會出現一個需要載入數據的選擇窗口。
三、導出數據
練習過程中導入數據EXCEL,就嘗試怎樣把新建立的數據框導出,利用write.table()來輸出.CSV文件。
如下輸出的ABC.csv文件
導出文本文件
write.table函數語法:
write.table (x, file ="", sep="", row.names =TRUE, col.names =TRUE, quote =TRUE)
x:需要導出的數據
file:導出的文件路徑
sep:分隔符,默認為空格(" "),也就是以空格為分割列
row.names:是否導出行序號,默認為TRUE,也就是導出行序號
col.names:是否導出列名,默認為TRUE,也就是導出列名
quote:字元串是否使用引號表示,默認為TRUE,也就是使用引號表示
例如:將數據框C輸出為.csv文件
write.table(C,file="ABC.csv",sep =",",row.names=FALSE) #ABC.csv將保存在R的工作目錄下,當不加sep= " "時,輸出的數據會在同一個單元格里,因此要加「,」。
四、數據框的使用--增加新數據
1.用rbind ()增加新的行
2.用cbind()增加列
在實踐過程導入包、中英文標點符號和編碼問題等地方出錯,慢慢解決了;R能訪問外部數據,此次學習手動鍵盤輸入數據和導入EXCEL數據,對於其他數據源的訪問和導入不熟悉,後期需要加強學習,畢竟R提供了豐富的函數來訪問外部數據。
推薦閱讀: