आर में arules पैकेज वर्ग 'लेनदेन' का उपयोग करता है। तो फ़ंक्शन apriori()
का उपयोग करने के लिए मुझे अपने मौजूदा डेटा को कन्वर्ट करने की आवश्यकता है। मैं 2 कॉलम और मोटे तौर पर 1.6 मिमी पंक्तियों के साथ एक मैट्रिक्स मिल गया है और इस तरह डेटा परिवर्तित करने की कोशिश की:बिग डेटा Arules पैकेज से "लेनदेन" में परिवर्तित
transaction_data <- as(split(original_data[,"id"], original_data[,"type"]), "transactions")
जहां original_data अपने डेटा मैट्रिक्स है। डेटा की मात्रा के कारण मैंने 64 जीबी रैम के साथ सबसे बड़ी एडब्ल्यूएस अमेज़ॅन मशीन का इस्तेमाल किया। थोड़ी देर के बाद मैं
जिसके परिणामस्वरूप वेक्टर 'AnswerType'
में वेक्टर लंबाई सीमा पार कर मशीन की मेमोरी उपयोग 60% पर 'केवल' अभी भी था। क्या यह आर-आधारित सीमा है? नमूनाकरण का उपयोग करने के अलावा इस के आसपास काम करने का कोई तरीका है? जब डेटा के 1/4 का उपयोग करते हुए परिवर्तन ठीक काम करता था।
संपादित करें: जैसा कि बताया गया है, चर के एक वर्ण चरित्र के बजाय एक कारक था। परिवर्तन बदलने के बाद जल्दी और सही संसाधित किया गया था।
मैंने इसके साथ थोड़ा और खेला, और जब मैं थोड़ा सा डेटा कम करता हूं, तो मुझे त्रुटि मिलती है 'अद्वितीय.default (...) लंबाई में त्रुटि 547601298 हैशिंग के लिए बहुत बड़ी है ' स्पष्ट रूप से फ़ाइल के कोड कोड में कुछ फ़ंक्शन 'MKsetup() ', फ़ाइल में.c.c एक निश्चित लंबाई से अधिक होने से वैक्टर को रोकता है। – Marco
क्या आप 'str (original_data) 'के परिणाम पोस्ट कर सकते हैं? यह जानना अच्छा होगा कि डेटा में कुछ समस्या उत्पन्न हो रही है या नहीं। – Iterator
क्या आप नकली उत्पन्न कर सकते हैं लेकिन एक प्रतिनिधि उदाहरण? –