標籤:r語言 學習筆記 變數名修改
在R語言中變數是在賦值時才建立的,不能事先進行聲明。這裡變數重新命名實際上指的是給變數中的子變數重新命名,如果從物件導向的角度來說,就象是修改一個類的屬性名稱,其資料保持不變。在一般物件導向的語言中,修改屬性名稱是不允許的,修改屬性名稱就等於把該屬性刪除,再重新建立一個屬性,並賦值。
在R語言裡為什麼要能修改屬性名稱呢,這應和R主要的工作領域有關,R作為統計分析類語言,需要處理大量資料,處理的主體是資料對象,若按物件導向的方式,則先要修改類的屬性,再重新執行個體化,讓後再給屬性賦值,這對於已擁有大量資料的R變數來說,簡直是一個噩夢。
好在R語言解決了這個問題,資料主體不用動,只需要修改一下其標籤(或為變數名)就可以了。
修改變數名主要針對資料框(data frame),修改方式:
假設已有資料框mydata,其結構為:
> mydata
x1 x2 sumx meanx
1 111 2222 2333 1166.5
1、使用可視化介面修改
使用命令列:
> fix(mydata)
> mydata
y1 x2 sumx meanx
1 111 2222 2333 1166.5
在彈出的對話方塊中,修改表格裡的變數名即可。本例結果為將變數x1的名字修改為y1
2、使用命令列修改
前提:需要先安裝reshape包。
在安裝好reshape包後,載入該包,然後利用transform()命令進行修改:
> library(reshape)
> rename(mydata,x1="y1")
Error in rename(mydata, x1 = "y1") : 參數沒有用(x1 = "y1")
> rename(mydata,c(x1="y1"))
y1 x2 sumx meanx
1 111 2222 2333 1166.5
>
結果將變數x1的名字修改為y1。
注意:修改的參數要放到一個向量中,格式為c(oldname="newname", oldname2="newname2")
R語言學習筆記-變數重新命名