2013-04-04 53 views
0

你怎麼寫「0到15之間」的語句?我將變量轉換爲分類變量,並且對其中一個類別的要求是重新編碼新的分類變量,以便舊變量(例如.X)變爲新變量。變量< - X在0和15之間。我如何制定R相關陳述?

編輯 - 澄清問題的

我一直在考慮數據集和指令是:

增長模式是通過將X變量到一個新的分類變量,它們可被稱爲「保增長」產生。第一類被分配到X變量中的15到50之間的孤島。所以這是個問題,但我最主要的是如何在R語言中編寫「在15到50之間」。這是我有:

growth$mediumgrowth.islands <- growth$SasiaUrban.X[growth$SasiaUrban.X ???] 
+0

什麼new.variable是否成立?一個布爾值? – Nishanth 2013-04-04 07:42:50

+0

我想你會發現羅蘭的答案確實解決了你的問題。請參閱[本文](http://stackoverflow.com/a/12979557/622391)以獲取更多解釋。 – 2013-04-04 21:39:17

回答

1

這並不完全清楚,我要達到什麼樣的,但我相信你想cut

x <- 0:20 
cut(x,c(-Inf,3,9,18,Inf)) 
# [1] (-Inf,3] (-Inf,3] (-Inf,3] (-Inf,3] (3,9]  (3,9]  (3,9]  (3,9]  (3,9]  (3,9]  (9,18] (9,18] (9,18] (9,18] (9,18] (9,18] 
# [17] (9,18] (9,18] (9,18] (18, Inf] (18, Inf] 
# Levels: (-Inf,3] (3,9] (9,18] (18, Inf] 

或可能findInterval

findInterval(x,c(-Inf,3,9,18,Inf)) 
#[1] 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 
+0

嗯,好的,我會盡力澄清。 – user2243433 2013-04-04 16:04:26