मैं इसके लिए एक अनुशंसा प्रणाली बनाने की कोशिश कर रहा हूं जिसके लिए मुझे एक स्पैस मैट्रिक्स बनाने की जरूरत है। मैं sparse.csr_matrix के साथ प्रयास कर रहा हूं लेकिन समस्या यह है कि मेरी उपयोगकर्ता आईडी और उत्पाद आईडी गैर-संख्यात्मक हैं, उदाहरण के लिए, 34f7653-2de।

मैं डेटाटाइप को श्रेणीबद्ध में परिवर्तित करने के बाद निम्नलिखित कोड के साथ प्रयास कर रहा हूं। मैंने sparse.coo_matrix के साथ भी कोशिश की है

SUI = sparse.csr_matrix((train['item_count'].astype(float), (train['user_id'], train['item_id'])))

निम्न त्रुटि दिखा रहा है:

लेखन त्रुटि: श्रेणीबद्ध को ऑपरेशन अधिकतम के लिए आदेश नहीं दिया गया है जिसका आप उपयोग कर सकते हैं .as_ordered() श्रेणीबद्ध को एक आदेशित में बदलने के लिए

क्या उस गैर-संख्या उपयोगकर्ता आईडी और उत्पाद आईडी को करने का कोई तरीका है?

1
user10669698 19 फरवरी 2019, 09:49

1 उत्तर

सबसे बढ़िया उत्तर

हमें उन नॉन_न्यूमेरिक आईडी को न्यूमेरिक आईडी में बदलने की जरूरत है। हम निम्नलिखित कोड के साथ ऐसा कर सकते हैं।

user_id = user_id.astype('category').cat.codes
0
user10669698user10669698 3 मार्च 2019, 08:36