2015-09-30 2 views
0

I имеют дискретную переменную P представляет propabilitesКлассифицировать вектор по интервалам

p <- c(0.5, 0.4, 0.5, 0.1, 0.8, 0.9) 

Я хочу изменить эту переменную и изменить ее в порядковых

категории:

01 less than 0.2 
02 from 0.2 up to 0.4 
03 More than 0.4 up to 0.6 
04 More than 0.6 up to 0.8 
05 More than 0.8 up to 1 
+0

И что вы пробовали? – m02ph3u5

ответ

3

You может использовать функцию cut следующим образом:

p <- c(0.5, 0.4, 0.5, 0.1, 0.8, 0.9) 

cut(p, breaks = seq(0, 1, 0.2), include.lowest = TRUE) 
#[1] (0.4,0.6] (0.2,0.4] (0.4,0.6] [0,0.2] (0.6,0.8] (0.8,1] 
#Levels: [0,0.2] (0.2,0.4] (0.4,0.6] (0.6,0.8] (0.8,1] 

Если вы хотите изменить метки, попробуйте аргумент labels, например.

cut(p, breaks = seq(0, 1, 0.2), labels = paste0("0", 1:5), include.lowest = TRUE) 
#[1] 03 02 03 01 04 05 
#Levels: 01 02 03 04 05 
Смежные вопросы