R 用户旅程路径
我有以下数据集:R 用户旅程路径,r,string,text-analysis,R,String,Text Analysis,我有以下数据集: ID IntNo Conv Path 743479 4 0 homepage 743479 3 0 page1 743479 2 0 page2 743479 1 0 page3 743479 0 1 page4 746523 2
ID IntNo Conv Path
743479 4 0 homepage
743479 3 0 page1
743479 2 0 page2
743479 1 0 page3
743479 0 1 page4
746523 2 0 homepage
746523 1 0 page3
746523 0 1 page4
1225709 1 0 homepage
1225709 0 1 page4
我希望得到如下输出:
Path Conv
homepage>page1>page2>page3>page4 1
homepage>page3>page4 1
homepage>page4 1
为此,我使用了以下代码:
users_path <- lapply(unique(datset$ID),
function(x) list( path= paste(dataset[dataset$ID==x,'Path'], sep="", collapse=">"),
total_conversions= length( datset[dataset$ID==x,'Path']) ) )
users_path<-do.call('rbind', users_path)
users_path<-data.frame(users_path)
您能帮我识别错误吗?如果您的数据在data.table中,请执行以下操作:
library(data.table)
dt <- as.data.table(df)
dt[, list(Path = paste(Path, sep="", collapse=">")), by = ID][, list(Total_conversions = .N), by = Path]
库(data.table)
dt对不起
代码是正确的。我把这张表读作数据表
dataset<-data.frame(dataset)
dataset下次请使用dput(dataframe)
让我们快速创建dataframe。不像bro那样。实际的数据帧。然后粘贴输出。像dput(dataframeNAME)一样,然后粘贴输出。@MaxPD在这种情况下很容易使用df Oh ok。以前从未使用过dput。很抱歉对无复制代码进行向下投票,有一个数据集
和数据集
不知道是什么。接收到一个错误,即“by”或“keyby”列表中的项目是长度(24900)。每个项目必须与x中的行或i(7316)返回的行数相同。“当运行第一部分dt[,list(Path=paste)时,您得到了什么?”(Path,sep=“”,collapse=“>”),by=ID]
?为什么不像在setDT(df)[,,(Total_conversions=sum(Conv),Path=paste(Path,collapse=“>”),by=ID]中那样一步到位呢?
?堆栈溢出不是一个论坛,请花点时间阅读和。如果此代码有效,您没有告诉datset
…1)有一个输入错误,2)你的环境不干净,你会得到意想不到的结果,3)前面两个的组合。
dataset<-data.frame(dataset)
users_path <- lapply(unique(datset$ID),
function(x) list( path= paste(dataset[dataset$ID==x,'Path'], sep="", collapse=">"),
total_conversions= length( datset[dataset$ID==x,'Path']) ) )
users_path<-do.call('rbind', users_path)