Python數據挖掘之隨機森林

 主要是使用隨機森林將four列缺失的數據補齊。dom

# fit到RandomForestRegressor之中,n_estimators表明隨機森林中的決策樹數量
#n_jobs這個參數告訴引擎有多少處理器是它可使用。 「-1」意味着沒有限制,而「1」值意味着它只能使用一個處理器。import pandas as pd #數據分析,引入pandas包,用以數據分析spa

 

import pandas as pd #數據分析,引入pandas包,用以數據分析
from sklearn.ensemble import RandomForestRegressor #隨機森林
 data=[[2,3,4],[6,7,8],[9,10,11,12],[52,84,62],[53,95,41,1],[12,92,12,21],[63,12,41,15],[85,76,43,1],[15,123,45,91],[952,42,1,3]] df=pd.DataFrame(data,columns=['one','two','three','four']) df2=df[['four','one','two','three']] print('****************************') print(df2) known_data=df2[df2.four.notnull()].as_matrix() unknown_data=df2[df2.four.isnull()].as_matrix() y=known_data[:,0] X=known_data[:,1:] rfr = RandomForestRegressor(n_estimators=2000, n_jobs=-1) rfr.fit(X, y) predictedDatas = rfr.predict(unknown_data[:,1:]) print('****************************') df2.loc[(df2.four.isnull()),'four']=predictedDatas print(df2) print('****************************')

結果:rest

相關文章
相關標籤/搜索