在 R 資料框中將分類列的值設定為數值。
要將 R 資料框中分類列的值設定為數值,我們可以使用組合函式 c。
例如,如果我們有一個名為 df 的資料框,其中包含一個名為 C 的分類列,該列有兩個類別:低和高,如果我們想用 1 和 10 來表示這些類別,則可以使用以下命令:
df$C<-c(Low=1,High=10)[df$C]
示例 1
以下程式碼片段建立了一個示例資料框:
Group<-sample(c("First","Second","Third"),20,replace=TRUE) df1<-data.frame(Group) df1
建立了以下資料框
Group 1 Third 2 Second 3 First 4 Second 5 Second 6 First 7 Third 8 Third 9 First 10 Second 11 First 12 First 13 First 14 Second 15 First 16 First 17 First 18 Second 19 Second 20 Third
要將上面建立的資料框中 Group 列的值替換為數字,請將以下程式碼新增到上述程式碼片段中:
Group<-sample(c("First","Second","Third"),20,replace=TRUE) df1<-data.frame(Group) df1$Group<-c(First=1,Second=2,Third=3)[df1$Group] df1
輸出
如果您將上面給出的所有程式碼片段作為一個程式執行,它將生成以下輸出:
Group 1 3 2 2 3 1 4 2 5 2 6 1 7 3 8 3 9 1 10 2 11 1 12 1 13 1 14 2 15 1 16 1 17 1 18 2 19 2 20 3
示例 2
以下程式碼片段建立了一個示例資料框:
Level<-sample(c("Low","Medium","High"),20,replace=TRUE) df2<-data.frame(Level) df2
建立了以下資料框
Level 1 Medium 2 Low 3 Low 4 High 5 Medium 6 Medium 7 Medium 8 Medium 9 Low 10 Low 11 Low 12 Low 13 Low 14 High 15 Medium 16 Medium 17 Low 18 Low 19 Medium 20 Medium
要將上面建立的資料框中 Level 列的值替換為數字,請將以下程式碼新增到上述程式碼片段中:
Level<-sample(c("Low","Medium","High"),20,replace=TRUE) df2<-data.frame(Level) df2$Level<-c(Low=5,Medium=15,High=20)[df2$Level] df2
輸出
如果您將上面給出的所有程式碼片段作為一個程式執行,它將生成以下輸出:
Level 1 15 2 5 3 5 4 20 5 15 6 15 7 15 8 15 9 5 10 5 11 5 12 5 13 5 14 20 15 15 16 15 17 5 18 5 19 15 20 15
廣告