子集化数据帧时出错

时间:2016-05-06 12:00:48

标签: r dataframe sequence reshape2 traminer

当我尝试使用包TraMineRreshape2为IT帮助台数据创建状态序列分析序列时,我不断收到错误

Error in `[.data.frame`(x, r, vars, drop = drop) : 
undefined columns selected

数据格式如下:

Object_ID  Changed_by Team_ID    Change_Date     Sequence    Time_1  Time_2  Time_Elapsed

0003DDF7   Jan S        SDM      2/9/2015 12:33   1           12:33   12:33     0        
0003DDF7   George V     TM       2/9/2015 14:15   2           12:33             1.7
0003DDF7   Eric K       TM       2/9/2015 17:06   3           12:33             4.55
0004D2A0   Jean C       SDM    13/03/2015 12:33   1            8:39    8:39     0

执行的代码是:

#Load Libraries
library(TraMineR)
library(reshape2)
setwd("H:/SSA")



# Original Dataset
Tickets<-read.csv("ThreeTickets.csv",sep=",")
fix(Tickets)
TicketsUnique<-unique(Tickets)
fix(Tickets)
TicketsTrans<-dcast(TicketsUnique, Object_ID ~ Time.Elapsed, value.var="Team_ID", fun.aggregate=length)
help(dcast)

fix(TicketsTrans)

#Create Alphabet
TicketsTrans.alphab<-c('SDM','TM','Automation Server SQL')
TicketsTrans.lab<-c('SDM','TM','Automation Server SQL')

#Create the sequence
TicketsTrans.seq <- seqdef(TicketsTrans, 2:14, alphabet = TicketsTrans.alphab, labels = TicketsTrans.lab, xtstep = 8)

但是当我尝试执行最后一行代码时,我得到了错误,如上所述。

TicketTrans的输出如下所示:

Object_ID   0   0.4   0.83  1.7  4.55 4.57 35.44  37.07  37.07 var12  var13  var14
0003DDF7    2   0     0     3     6   8     3      0      0
0004D2A0    8  11     0     0     0   0     0      0      0
0005BE2A    2   0     4     0     0   0     0      5     11

1 个答案:

答案 0 :(得分:0)

TicketTrans的摘录中,最后三列似乎未定义。此外,还有一个重复的列标题(37.07)。这可能是你得到错误的原因。

现在,独立于此错误,TicketTrans的内容似乎对我很好奇。根据您的原始数据,我了解变量sequence表示从Time_Elapsed持续Time_1时间的状态。然后,对于案例0003DDF7,您应该在第1列中有州1 and 2 and 3,在接下来的三列中说明2 and 3,在标有&#34的列中列出3; {{1以下列中包含&#34;和状态4.55