Cut()

在R语言中,cut()函数是dplyr包中的一个函数,用于将连续型的变量分成指定宽度的区间

[[group_by()]]中有个不错的实例

函数定义

cut(x, breaks, labels = NULL, include.lowest = FALSE, right = TRUE, dig.lab = 3, ordered_result = FALSE, ... )

参数

  • x要切分的连续变量

  • breaks:指定分组的边界值。可以是一个向量,表示每个分组的边界值;或者是一个整数,表示要将x划分为几个等宽的分组;或者是一个函数,用于计算分组边界值。

  • labels分组的标签。如果未指定,将使用默认的分组标签。 默认分组显示的是因子标签,是一个左开右闭的区间范围; labels=FALSE,则标签设置的是序号从第一个分组到最后一个,归入相应序号1、2...

  • include.lowest:是否包含最小值所在的分组。默认为FALSE,即不包含最小值所在的分组。

这个最小值指得是?

  • right:指定分组的右边界类型。如果为TRUE,则右边界是闭区间;如果为FALSE,则右边界是开区间。

  • dig.lab:标签的小数位数。

  • ordered_result:是否返回有序因子作为结果。如果为TRUE,则返回有序因子;如果为FALSE,则返回无序因子。

  • ...:其他可选参数。

示例: 以下是使用cut()函数将连续变量划分为离散分组的示例:

library(dplyr)

# 示例数据
data <- data.frame(values = c(1, 3, 5, 2, 6, 7, 4, 9, 8))

# 将连续变量划分为三个分组
cut_result <- cut(data$values, breaks = 3)

# 打印划分结果
print(cut_result)

在上述示例中,我们首先加载了dplyr包,并创建了一个包含连续变量的示例数据框data

然后,我们使用cut()函数将data$values划分为三个分组。在示例中,我们未指定breaks参数的具体值,因此默认将x划分为三个等宽的分组。

最后,我们打印出划分的结果cut_result,它将连续变量转换为一个无序因子,表示每个值所属的分组。

以上是cut()函数在dplyr包中的基本用法和示例。它用于将连续变量划分为离散的分组。可以通过指定breaks参数来控制分组的边界值,labels参数来指定分组的标签,以及其他可选参数来调整划分的行为。

对应得到9个分组区间,以及分组的总体情况Levels。

[1] (0.995,3.33] (0.995,3.33] (3.33,5.67] (0.995,3.33] (5.67,8] (5.67,8] (3.33,5.67]  (8,10] (8,10]      
Levels: (0.995,3.33] (3.33,5.67] (5.67,8] (8,10]

在这个例子中,cut_result是一个无序因子,显示了每个值所属的分组。分组的标签是根据默认的划分规则生成的,并且使用了默认的小数位数(dig.lab)。

每个值都被分配到一个合适的分组范围,并显示在方括号中。例如,(0.995,3.33]表示该值属于范围在0.995到3.33之间(不包括3.33)的分组。

请注意,具体的分组范围和标签可能会根据输入数据和参数的设置而有所不同,上述输出仅为示例目的。