gpt4 book ai didi

r - 根据范围在R中创建分类变量

转载 作者:行者123 更新时间:2023-12-03 15:23:55 25 4
gpt4 key购买 nike

我有一个包含一列整数的数据框,我想将其用作创建新分类变量的引用。我想将变量分成三组并自己设置范围(即 0-5、6-10 等)。我试过 cut但这根据正态分布将变量分组,我的数据是正确偏斜的。我也尝试使用 if/then 语句,但这会输出一个真/假值,我想保留我的原始变量。我确信有一种简单的方法可以做到这一点,但我似乎无法弄清楚。有关快速执行此操作的简单方法的任何建议?

我有这样的想法:

x   x.range
3 0-5
4 0-5
6 6-10
12 11-15

最佳答案

据我所知,伊恩的回答(剪切)是最常用的方法。

我更喜欢使用 木瓦 ,来自格子包

指定分箱间隔的参数对我来说似乎更直观一些。

你像这样使用木瓦:

# mock some data
data = sample(0:40, 200, replace=T)

a = c(0, 5);b = c(5,9);c = c(9, 19);d = c(19, 33);e = c(33, 41)

my_bins = matrix(rbind(a, b, c, d, e), ncol=2)

# returns: (the binning intervals i've set)
[,1] [,2]
[1,] 0 5
[2,] 5 9
[3,] 9 19
[4,] 19 33
[5,] 33 41

shx = shingle(data, intervals=my_bins)

#'shx' at the interactive prompt will give you a nice frequency table:
# Intervals:
min max count
1 0 5 23
2 5 9 17
3 9 19 56
4 19 33 76
5 33 41 46

关于r - 根据范围在R中创建分类变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2647639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com