2011-11-17 61 views
0

我有一個帶整數值的df。爲了進行分類,我想用一個更簡單的df來代替這個df,它具有預定的間隔而不是整數。我如何有效地做到這一點?下面是一個例子:R用bin替換值

DF:

1 2 3 
1 5 3 0 
2 1 10 12 
3 3 0 10 

變換成:

1  2  3 
1 [3-5] [3-5] [0-2] 
2 [0-2] [10-12][10-12] 
3 [3-5] [0-2] [10-12] 

回答

9

df數據幀或一個矩陣?名字暗示前者,但你描述它的方式暗示後者。

如果它是一個矩陣:

df2 <- cut(df, c(0, 2, 5, 9 12)) 
dim(df2) <- dim(df) 

如果它是一個數據幀:

df[] <- lapply(df, cut, c(0, 2, 5, 9, 12)) 
+0

+1分配給'DF []'是很好的和非顯而易見的... –