R- 如何为不同长度的数据创建事务矩阵用于关联挖掘

问题描述

描述:我有一个包含患者 ID 和诊断 ID 的数据集。每个患者可能有 1 到 20 个诊断。 Example of Dataset

目标:我需要将我的数据框转换为用于市场篮子分析的交易矩阵。

问题:到目前为止,我在使用用于制作事务矩阵的普通工具时遇到了问题,我相信这是因为每个 PID 记录的长度各不相同。

我的尝试:我使用了“arules”包,尝试通过将数据作为事务矩阵读取来将我的数据转换为事务矩阵。 Example of code used to load in data as Transaction

这导致了错误: 'read.transactions("intermediate.csv",format = "single",cols = c("pid",: 'cols' 必须是数字(字符只允许用于 header = TRUE)'

最初,这个错误让我相信列的数据类型不正确(非数字),尽管在写出文件并将其读回之前,我在行中明确地将它们的数据类型设置为数字交易。我已通过读回文件(而不是作为交易)确认文件采用我想要的格式。

关于如何进行的任何想法?我也将使用“sqldf”来尝试完成这项工作,但我更愿意将其保留在“arules”库中。

谢谢。

解决方法

好吧,很快就得出了答案,但我可能会将问题留在这里作为示例。附件是修复所需的全部内容。 Fix

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...