在R中对数据进行分类

Toannguyen

我试图根据数据类型将数据分类到不同的组中。我的数据和代码如下:

bank    ROE
bank1   0.73
bank2   0.94
bank3   0.62
bank4   0.57
bank5   0.31
bank6   0.53
bank7   0.39
bank8   0.01
bank9   0.16
bank10  0.51
bank11  0.84
bank12  0.18

sob <- c('bank1', 'bank2','bank3',)
fob <- c('bank4','bank5', 'bank6')
jov <- c('bank7', 'bank8','bank9', 'bank10','bank11')

test$type <- ifelse(test$bank == sob, 1, ifelse(test$bank == fob, 2, ifelse(test$bank == jov, 3,     4)))
test

但是,由于类别显示错误,因此此代码无法正常工作,并且我得到以下警告:

Warning messages:
1: In is.na(e1) | is.na(e2) :
longer object length is not a multiple of shorter object length
2: In `==.default`(test1$bank, jov) :
longer object length is not a multiple of shorter object length

谁能告诉我我做错了什么,以及我应该怎么做才能做对?

谢谢

怎么样

您应该使用%in%-operator而不是标识-您正在此处与向量进行比较。

像这样:

test$type <- ifelse(test$bank %in% sob, 1, ifelse(test$bank %in% fob, 2, ifelse(test$bank %in% jov, 3,     4)))

> test
     bank  ROE type
1   bank1 0.73    1
2   bank2 0.94    1
3   bank3 0.62    1
4   bank4 0.57    2
5   bank5 0.31    2
6   bank6 0.53    2
7   bank7 0.39    3
8   bank8 0.01    3
9   bank9 0.16    3
10 bank10 0.51    3
11 bank11 0.84    3
12 bank12 0.18    4

另外,为了避免繁琐的if-else结构,可以对因子进行分类重置级别。

首先复制库变量test $ type <-test $ bank

然后,使用上面定义的向量(sob,fob,job)重新设置电平。请注意,最后一步'other'被设置为剩余值,因为在其他向量中未定义bank12。

levels(test$type) <- list('sob' = sob,
                          'fob' = fob,
                          'jov' = jov,
                          'other' = 'bank12')

导致

> test
     bank  ROE  type
1   bank1 0.73   sob
2   bank2 0.94   sob
3   bank3 0.62   sob
4   bank4 0.57   fob
5   bank5 0.31   fob
6   bank6 0.53   fob
7   bank7 0.39   jov
8   bank8 0.01   jov
9   bank9 0.16   jov
10 bank10 0.51   jov
11 bank11 0.84   jov
12 bank12 0.18 other

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法使用R对数据进行分类

来自分类Dev

在新列中对数据进行分类

来自分类Dev

在数据框中的列中对数据进行分类

来自分类Dev

根据年份在MATLAB中对数据(单元阵列)进行分类

来自分类Dev

按熊猫中的值对数据进行分类

来自分类Dev

如何使用KNN在MATLAB中对数据进行分类?

来自分类Dev

opencv kmeans不在某些类中对数据进行分类

来自分类Dev

对数据框中的分类变量进行排序

来自分类Dev

如何在R中对数值范围进行分类

来自分类Dev

在R中对数据帧进行分组

来自分类Dev

在R中对数据帧进行分组

来自分类Dev

在python中对数字进行分类

来自分类Dev

根据另一个数据框中的信息对数据框进行分类

来自分类Dev

如何在Python中对数字进行分类和分类?

来自分类Dev

Case_when使用sum对数据进行分类时-R / dplyr解决方案

来自分类Dev

Case_when使用sum对数据进行分类时-R / dplyr解决方案

来自分类Dev

如何根据一列中的值对数据进行分类,并计算另一列中的出现次数(不包括R中的重复项)?

来自分类Dev

按一年中的月份对数据进行分类

来自分类Dev

根据每一行中的字符串对数据进行分类

来自分类Dev

我想根据我在Pandas中的其他专栏对数据透视表进行分类

来自分类Dev

如何根据python中的时间变化对数据集进行分类或重新分组

来自分类Dev

如何使用分类变量对数据框进行分组以在matplotlib中制作线形图?

来自分类Dev

使用dplyr对数据框的两列中的对象进行分类

来自分类Dev

根据Numbers 3.X中的列对数据进行分类

来自分类Dev

按一年中的月份对数据进行分类

来自分类Dev

根据r中id中的值对数据进行子集

来自分类Dev

在R中的列表中对数据框进行排序

来自分类Dev

在R中对数据框进行自定义排序

来自分类Dev

按R中的ALL列对数据框进行排序

Related 相关文章

  1. 1

    无法使用R对数据进行分类

  2. 2

    在新列中对数据进行分类

  3. 3

    在数据框中的列中对数据进行分类

  4. 4

    根据年份在MATLAB中对数据(单元阵列)进行分类

  5. 5

    按熊猫中的值对数据进行分类

  6. 6

    如何使用KNN在MATLAB中对数据进行分类?

  7. 7

    opencv kmeans不在某些类中对数据进行分类

  8. 8

    对数据框中的分类变量进行排序

  9. 9

    如何在R中对数值范围进行分类

  10. 10

    在R中对数据帧进行分组

  11. 11

    在R中对数据帧进行分组

  12. 12

    在python中对数字进行分类

  13. 13

    根据另一个数据框中的信息对数据框进行分类

  14. 14

    如何在Python中对数字进行分类和分类?

  15. 15

    Case_when使用sum对数据进行分类时-R / dplyr解决方案

  16. 16

    Case_when使用sum对数据进行分类时-R / dplyr解决方案

  17. 17

    如何根据一列中的值对数据进行分类,并计算另一列中的出现次数(不包括R中的重复项)?

  18. 18

    按一年中的月份对数据进行分类

  19. 19

    根据每一行中的字符串对数据进行分类

  20. 20

    我想根据我在Pandas中的其他专栏对数据透视表进行分类

  21. 21

    如何根据python中的时间变化对数据集进行分类或重新分组

  22. 22

    如何使用分类变量对数据框进行分组以在matplotlib中制作线形图?

  23. 23

    使用dplyr对数据框的两列中的对象进行分类

  24. 24

    根据Numbers 3.X中的列对数据进行分类

  25. 25

    按一年中的月份对数据进行分类

  26. 26

    根据r中id中的值对数据进行子集

  27. 27

    在R中的列表中对数据框进行排序

  28. 28

    在R中对数据框进行自定义排序

  29. 29

    按R中的ALL列对数据框进行排序

热门标签

归档