【发布时间】:2015-04-20 03:10:58
【问题描述】:
我提前为笨拙的标题道歉,但我不知道如何更准确地定义我想要做的事情。
首先,我将生成一小部分数据:
data<-data.frame("ID"=c("A","A","A","B","B","B","C","C","C"),
"emp.num"=c(2,3,100,150,250,300,400,500,600),
"rev"=c(10,80,100,200,300,50,300,350,350))
看起来像这样:
ID emp.num rev
1 A 2 10
2 A 3 80
3 A 100 100
4 B 150 200
5 B 250 300
6 B 300 50
7 C 400 300
8 C 500 350
9 C 600 350
其中“ID”是公司名称,“emp.num”代表公司员工人数,“rev”代表收入。
我想做的是创建一个因子变量(Size),根据以下原则将公司分为“小”、“中”和“大”:
小型:rev(0,65] 和 emp.num (0,50] 的公司
medium:rev(65,260] 和 emp.num (50,250] 的公司
大:rev>260 和 emp.num>250
所以最后我想得到这个:
ID emp.num rev Size
1 A 2 10 S
2 A 3 80 M
3 A 100 100 M
4 B 150 200 M
5 B 250 300 L
6 B 300 50 L
7 C 400 300 L
8 C 500 350 L
9 C 600 350 L
如果我想仅从单个数字(假设仅从 rev 或仅从 emp.num)创建因子变量,使用 cut() 函数当然会是一个简单的问题,但我已经完成了当我想使用这样的 2 个变量时,如何“削减”的损失
【问题讨论】:
-
欢迎来到 SO:SE。你有问题吗?如果您需要指导,请参阅 How to Ask。
标签: r