【问题标题】:R. How to identify rulesR. 如何识别规则
【发布时间】:2015-03-06 17:27:20
【问题描述】:

有谁知道如何识别规则,以显示哪些治疗通常用于哪些疾病。我有这个数据。第一列 - 患者,第二列 - 疾病,第三列 - 药物。

P1  D1  M1  
P1  D2  M1  
P2  D3  M2  M3  
P2  D4  M4  
P2  D1  M5  
P2  D2  M6  M7  M8  
P2  D1  M4  M9  
P2  D8  M10 
P3  D9  M11 

我用这段代码读取了以下数据

t <- read.transactions("data.txt", format="basket", sep="\t", cols=1)
dt = apriori(t, parameter = list(support=0.002, confidence =0.5))
inspect(dt)

【问题讨论】:

    标签: r associations identity rules


    【解决方案1】:

    首先,将数据从宽格式更改为长格式。您可以使用reshape() 执行此操作。由于您没有提供变量名称,您的代码将类似于:

    reshape(d, direction="long", varying=list(names(d)[2:7]), v.names="Treatment", idvar=c("PatientID"))
    

    当您这样做时,您的数据将如下所示:

    P1  D1  M1
    P1  D2  M1  
    P2  D3  M2 
    P2  D3  M3
    P2  D4  M4  
    P2  D1  M5  
    P2  D2  M6
    P2  D2  M7  
    P2  D2  M8    
    P2  D1  M4  
    P2  D1  M9  
    P2  D8  M10 
    P3  D9  M11
    

    完成此操作后,您可以轻松创建一个 2x2 表格来查看不同疾病的治疗频率。为此,您的代码将如下所示:

    table(d$disease, d$M)
    

    制作(类似)这样的:

         M1 M2 M3
      D1  1  0  0
      D2  1  1  1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-27
      • 2017-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-28
      相关资源
      最近更新 更多