問題描述:執行下面的代碼,報錯valueError: This solver needs samples of at least 2 classes in the data, but the data contains only one class: 0
原因:數據量太少
解決方案:增加訓練數據量
代碼如下:
filename = "test.csv" data = pd.read_csv(filename,sep=' ') data = pd.DataFrame(data) x = data.iloc[:,:8].as_matrix() y = data.iloc[:,8].as_matrix() from sklearn.linear_model import LogisticRegression as LR from sklearn.linear_model import RandomizedLogisticRegression as RLR rlr = RLR() # 建立隨機邏輯回歸模型,篩選變量 rlr.fit(x, y) rlr.get_support() print (rlr.get_support()) print ("*********************88") print (u'有效特征:%s' % ','.join(data.columns[rlr.get_support()]))