我有一个.csv文件中的事务列表。
对于每一行,第一列包含"TransactionID"
。在第二列中包含该事务中单个项目的"ItemName"
。第三列包含相应的"ItemNumber"
。
我使用read.csv
导入这些交易。
trans = read.csv("MyFile.csv", header = TRUE, sep = ";")
然后我拿相关列并将它们转换为带有因子的列表。
TransList <- split(trans[,"ItemNames"], trans[,"TransactionID"])
最后,我将此列表强制转换为交易。
TransMat <- as(TransList, "transactions")
现在我想将每个“篮子”的内容写入文件。
write(TransMat, file = "Basket.csv", sep = ", ", quote = FALSE)
不幸的是,不是将原始"ItemNames"
写入文件,而是将因子ID写入文件。
让我感到困惑的是,当我使用"ItemNumbers"
代替"ItemNames"
时,这种情况不会发生。
如何将原始“ItemNames”写入.csv文件而不是FactorID?
谢谢!
答案 0 :(得分:1)
我能够解决自己的问题。
在分割之前简单地强制转换到data.frame就可以了。
trans <-as.data.frame(trans)
但老实说,我不明白为什么这样有效......如果有人在评论中给我启发,我会非常感激。