Le paquetage arules dans R utilise la classe 'transactions'. Donc, afin d'utiliser la fonction apriori()
j'ai besoin de convertir mes données existantes. J'ai une matrice avec 2 colonnes et environ 1,6mm lignes et essayé de convertir les données comme ceci:Big Data convertir en "transactions" à partir du paquet arules
transaction_data <- as(split(original_data[,"id"], original_data[,"type"]), "transactions")
où original_data est ma matrice de données. En raison de la quantité de données que j'ai utilisé la plus grande machine Amazon AWS avec 64 Go de RAM. Après un certain temps, je me
vecteur résultant dépasse la limite de longueur de vecteur dans « AnswerType »
L'utilisation de la mémoire de la machine à 60% était encore « seulement ». Est-ce une limitation basée sur R? Y a-t-il un moyen de contourner cela autrement que d'utiliser l'échantillonnage? Quand seulement en utilisant 1/4 des données la transformation a bien fonctionné. Edit: Comme indiqué, l'une des variables était un facteur au lieu du caractère. Après avoir changé la transformation a été traitée rapidement et correcte.
J'ai joué avec un peu plus, et quand je réduis la quantité de données par un peu, j'obtiens l'erreur 'Erreur dans unique.default (...) longueur 547601298 est trop grande pour hashing' Apparemment, certaines fonction 'MKsetup()' dans le code système de R, dans le fichier unique.c, empêche les vecteurs de dépasser une certaine longueur. – Marco
Pouvez-vous publier les résultats de 'str (original_data)'? Il serait bon de savoir s'il y a un problème dans les données. – Iterator
Pouvez-vous générer un faux, mais un exemple représentatif? –