2015-05-13 2 views
1

Я хочу попробовать с заменой вектора. Например:Образец из вектора и сохранить нулевые частоты

set.seed(11) 
x = as.data.frame(table(sample(c("one", "two", "three"), 5, replace = T, prob = c(0.05, 0.45, 0.5)))) 

возвращается:

x 

Var1 Freq 
1 three 4 
2 two 1 

Есть ли способ, чтобы получить кадр данных, который будет содержать "один" частоту, а также, где значение будет 0:

Var1 Freq 

1 three 4 
2 two 1 
3 one 0 
+1

Не большое дело, у вас есть дополнительный «)» в конце строки 2 кода. Это слишком мало для редактирования, чтобы меня разрешали делать. –

ответ

2

вы можете определить коэффициент и образец на это:

f_sa <- factor(c("one", "two", "three")) 
x <- as.data.frame(table(sample(f_sa, 5, replace = T, prob = c(0.05, 0.45, 0.5)))) 

x 
# Var1 Freq 
# 1 one 0 
# 2 three 4 
# 3 two 1 

Если вы хотите, чтобы быть отсортированы по частоте вместо уровня:

x[order(x$Freq, decreasing=T),] 

# Var1 Freq 
#2 three 4 
#3 two 1 
#1 one 0 
Смежные вопросы