【发布时间】:2018-10-21 15:25:15
【问题描述】:
R 专家您好,
我是一名尝试学习 R 的 Stata 程序员。 我有一个数据框,其中每个行 ID 的值为 df1:
df1 <- data.frame(name=c("John", "Mary", "Joe", "Tim", "Bob", "Pat"),
v1=c(14,2,3,4,14,1),
v2=c(21,6,19,31,16,5),
v3=c(32,10,22,33,27,30),
v4=c(42,17,45,39,34,35),
v5=c(98,35,66,0,78,99),
v6=c(117,49,0,0, 89,186))
每个访问者 ID 列中的值范围为 1 到 1000。这些基本上是每个访问者 ID 在 1000 天内访问医生的天数。部分患者症状消失后停止就诊,部分患者继续服药并按照医生的规定进行常规就诊。有的患者病了很久以后又开始复诊了。
我想创建一个稀疏矩阵,其中包含从 1 到 1000 天就诊的所有 ID。您能否建议如何创建稀疏矩阵。它在 Stata 中非常简单直接,但我无法在 R 中找到方法。
最终结果应采用以下形式:
name 1 2 3 4 5 6 10 14 16 17 19 21
John 1 1
Mary 1 1 1 1
Joe 1 1
创建稀疏矩阵后,我必须预测患者下次就诊的时间。 我计划创建一个稀疏矩阵,然后创建最后两次连续访问之间差异的计算变量,然后对其使用逻辑回归。是否可以生成更多的 KPI 以仅使用给定的信息进行稳健的分析?有人可以建议这个想法是否正确,或者是否有更好的方法来解决它。
提前致谢。
【问题讨论】:
-
不鼓励在 SO 上提出多部分问题。您应该编辑您的问题以删除 las 几个句子。 (我怀疑“KPI”是 Stata 用户专用的某种首字母缩写词,因此如果您发布单独的问题,您应该定义它。)就创建稀疏矩阵而言,使用 Matrix 包中的函数非常容易。跨度>
标签: r sparse-matrix predict visitor-statistic