Я пытаюсь решить проблему наличия матрицы совместного присутствия. У меня есть файл данных транзакций и элементов, и я хочу видеть матрицу количества транзакций, в которых элементы отображаются вместе.
Я новичок в программировании R, и мне интересно узнать все ярлыки, которые R имеет, а не создавать определенные циклы (я использовал C лет назад и только придерживался макросов Excel и SPSS сейчас), Я проверил решения здесь, но не нашел тот, который работает (ближайшим является решение, приведенное здесь: Матрица совпадения с использованием SAC? - но она создала сообщение об ошибке, когда я использовал projecting_tm, я подозревал, что cbind не удалось в моем случае.
По существу, у меня есть таблица, содержащая следующее:
TrxID Items Quant
Trx1 A 3
Trx1 B 1
Trx1 C 1
Trx2 E 3
Trx2 B 1
Trx3 B 1
Trx3 C 4
Trx4 D 1
Trx4 E 1
Trx4 A 1
Trx5 F 5
Trx5 B 3
Trx5 C 2
Trx5 D 1, etc.
Я хочу создать что-то вроде:
A B C D E F
A 0 1 1 0 1 1
B 1 0 3 1 1 0
C 1 3 0 1 0 0
D 1 1 1 0 1 1
E 1 1 0 1 0 0
F 0 1 1 1 0 0
Что я сделал (и вы, наверное, смеетесь над моим новичком R):
library(igraph)
library(tnet)
trx <- read.table("FileName.txt", header=TRUE)
transID <- t(trx[1])
items <- t(trx[2])
id_item <- cbind(items,transID)
item_item <- projecting_tm(id_item, method="sum")
item_item <- tnet_igraph(item_item,type="weighted one-mode tnet")
item_matrix <-get.adjacency(item_item,attr="weight")
item_matrix
Как упоминалось выше, cbind, вероятно, не увенчался успехом, поэтому projecting_tm не смог дать мне никакого результата.
Любой альтернативный подход или поправка к моему методу?
Ваша помощь будет очень признательна!