[英]R grouping data with factors and levels
我正在嘗試制作一個頻率表,將值分組為有限數量的箱。
說我有數據
X <- c(1,2,3,4,3,9, 20)
我可以創建一個頻率表,使其顯示所有空單元格,如下所示:
(factor(X, levels = c(0:max(X))))
我想將bin值>5
,而不是顯示每個可能值的頻率,以便表上的級別為: 0, 1, 2, 3, 4, 5, and >5
。
我怎樣才能做到這一點?
您首先需要轉換向量以使其具有唯一條目,然后您可以在factor()
函數中添加缺少的級別:
X <- c(1,2,3,4,3,9,20)
X <- ifelse(X>5,">5",X)
X <- factor(X,levels=c(0:5,">5"))
這導致:
X [1] 1 2 3 4 3> 5> 5級別:0 1 2 3 4 5> 5
Sacha已經給你一個有效的答案,但是為了將來參考,你可能想要熟悉cut
函數,它旨在將連續變量分解為塊。
x <- cut(x, c(-Inf, 0:5, Inf), labels=c(0:5, ">5"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.