二进制数据的随机森林

标签 r machine-learning

我的数据具有以下格式:

stock st1 str2 str3 str4 str5 str6 str7 str8
A 1 0   0   0   1   0   0   0
A 0 0   0   0   0   0   0   0
A 1 0   0   0   0   0   0   0
B 0 0   0   0   0   0   0   0
B 1 0   0   0   1   0   0   0
C 0 0   0   0   0   0   0   0
C 1 0   0   0   1   0   0   1
C 0 0   0   0   0   0   0   0
C 0 0   0   0   0   0   0   0
C 1 0   0   0   1   0   0   1
A 0 0   0   0   0   0   0   0
A 0 0   0   0   0   0   0   0
A 0 0   0   0   0   0   0   0
A 1 0   0   0   0   0   0   0
A 0 0   0   0   0   0   0   0
B 0 0   0   0   0   0   0   0
B 0 0   0   0   0   0   0   0
C 1 0   0   0   0   0   0   0

我是数据分析新手,我想知道我可以用这种数据格式实现什么分析。是否可以有随机森林和剪枝 TreeMap ?

如何找到一种方法来查找簇/组并在树状图中查看列 st1、str2、str3 等

最佳答案

尝试使用决策树(使用一些随机生成的 100 行 df 进行测试,具有相同的结构):

head(df)
  stock str1 str2 str3 str4 str5 str6 str7 str8
1     B    1    0    1    0    0    0    1    0
2     B    1    1    1    1    1    1    1    1
3     A    0    1    1    1    0    0    0    0
4     B    0    0    0    1    0    1    1    0
5     C    1    0    0    0    1    1    1    0
6     B    1    1    1    1    0    0    1    1

library(rpart)
tr <- rpart(stock~., df) # you can prune this tree with the cp param / with CV

print(tr)

n= 100 

node), split, n, loss, yval, (yprob)
      * denotes terminal node

 1) root 100 63 C (0.33000000 0.30000000 0.37000000)  
   2) str5=1 49 27 A (0.44897959 0.16326531 0.38775510)  
     4) str8=0 32 15 A (0.53125000 0.06250000 0.40625000)  
       8) str6=0 15  5 A (0.66666667 0.06666667 0.26666667) *
       9) str6=1 17  8 C (0.41176471 0.05882353 0.52941176) *
     5) str8=1 17 11 B (0.29411765 0.35294118 0.35294118) *
   3) str5=0 51 29 B (0.21568627 0.43137255 0.35294118)  
     6) str8=0 27 12 B (0.18518519 0.55555556 0.25925926) *
     7) str8=1 24 13 C (0.25000000 0.29166667 0.45833333)  
      14) str7=0 12  6 C (0.41666667 0.08333333 0.50000000) *
      15) str7=1 12  6 B (0.08333333 0.50000000 0.41666667) *

library(rpart.plot)
prp(tr)

enter image description here

关于二进制数据的随机森林,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40758357/

相关文章:

python - 使用高斯混合模型和 scikit learn 进行多类分类

r - knitr 缠结的 R 代码中缺少 block 名称

r - 仅将网格线添加到较小的中断处(ggplot)

r - 使用浏览器时在调用堆栈中搜索对象

r - R 中带有非空单元格的绘图板

python - 如何在图像上应用word2vec?

r - 如何使用R的遗传算法来优化支持向量机的参数

machine-learning - 将弱学习器组合成强分类器

R:tuneRF 函数的行为不明确(randomForest 包)

r - 模拟多元数据进行回归时,如何设置R平方(包括示例代码)?