मैं फिट करने के लिए की जरूरत RandomForestRegressor
से sklearn.ensemble
।
forest = ensemble.RandomForestRegressor(**RF_tuned_parameters)
model = forest.fit(train_fold, train_y)
yhat = model.predict(test_fold)
इस कोड ने हमेशा तब तक काम किया जब तक कि मैंने डेटा के कुछ प्रीप्रोसेसिंग ( train_y
) नहीं कर दिया। त्रुटि संदेश कहता है:
DataConversionWarning: एक कॉलम-वेक्टर y तब पारित किया गया था जब 1d सरणी अपेक्षित थी। कृपया y का आकार (n_samples), उदाहरण के लिए ravel () का उपयोग करके बदलें।
मॉडल = forest.fit (train_fold, train_y)
पहले train_y
एक सीरीज़ थी, अब यह सुपीरियर एरे है (यह एक कॉलम-वेक्टर है)। यदि मैं आवेदन करता हूं train_y.ravel()
, तो यह एक पंक्ति वेक्टर बन जाती है और कोई त्रुटि संदेश प्रकट नहीं होता है, भविष्यवाणी कदम के माध्यम से बहुत लंबा समय लगता है (वास्तव में यह कभी भी समाप्त नहीं होता है ...)।
डॉक्स में RandomForestRegressor
मैंने पाया कि
इस मुद्दे को हल करने के लिए किसी भी विचार के train_y
रूप में परिभाषित किया जाना चाहिए y : array-like, shape = [n_samples] or [n_samples, n_outputs]
?
train_y
यह सुनिश्चित करने के लिए अपने डेटा की सामग्री की जांच की है कि प्रीप्रोसेसिंग ने इसे भ्रष्ट नहीं किया है?
RF_tuned_parameters
कृपया हमारे लिए प्रिंट करें ।
train_fold.shape
औरtrain_y.shape
?