2013-05-16 168 views
0

我想用數字在數據幀中的R

例如一列替換文本進行替換,

>df = chickwts 
>df 
    weight  feed 
1  179 horsebean 
2  160 horsebean 
3  136 horsebean 
4  227 horsebean 
5  217 horsebean 
6  168 horsebean 
7  108 horsebean 
8  124 horsebean 
9  143 horsebean 
10 140 horsebean 
11 309 linseed 
12 229 linseed 
... 

如何更換與數字1:6在一個命令所有6飼料的名字?

我是r的初學者,花了一個小時嘗試不同的功能,沒有成功。我想用

fr = unique(df$feed) 
to = 1:6 

但除此之外,我有困難。

回答

3

取決於你想要做什麼。如果你打算做一些統計分析,將飼料作爲分類變量,那麼as.factor就是你正在尋找的。試試這個:

# Turn them into a factor like this 
df$feed <- as.factor(df$feed) 

# Here are the levels of the factor 
levels(df$feed) 
# [1] "horsebean" "linseed" 

# If you want their underlying numerical values 
as.numeric(df$feed) 
# [1] 1 1 1 1 1 1 1 1 1 1 2 2 
+1

所以只是對添加到SimonO101: '$ DF進< - as.numeric(as.factor(DF $飼料))' 會做你想要什麼 – zap2008