2017-06-04 111 views
1

假設我有兩個數據幀df1和df2。在df1中,我有幾個列,如userid,sexid,位置等。在df2中,除了sexid,我需要使用一些預測算法來填充所有與df1相同的列。 我只是一個初學者,我嘗試了另一種問題。因此,歡迎任何可能幫助我破解它的建議或有用的參考資料。如何使用舊數據幀中的信息預測新Python數據框中列的值

+1

如果您不瞭解這些人的特徵(即如果您沒有數據可以通過您的模型),您如何預測'df2'中的'sexid'? – blacksite

+0

哦,我混了點東西。在我的'df2'中,我也有'df1'中的所有列,因爲我需要預測它,所以我沒有'sexid'。我將編輯我的帖子。感謝您指出我的錯誤:) –

+0

尋找sklearn包文檔可能是一個好的開始(在你的情況下,你需要一個分類器) –

回答

2

小例子:

import pandas as pd 
from sklearn.linear_model import LogisticRegression 

df1 = pd.DataFrame({'sexid': list('MMFFMFFMMF'), 'x1': [0, 12, 2, 3, 4, 2, 0, 12, 12, 12], 'x2': [0, 1, 1, 1, 0, 1, 1, 0, 0, 1]}) 

df2 = pd.DataFrame({'x1': [0, 12, 2, 3, 4, 2, 0, 12, 12, 12], 'x2': [0, 1, 1, 1, 0, 1, 1, 0, 0, 1]}) 

X = df1[['x1', 'x2']] 
y = df1['sexid'] 

model = LogisticRegression() 

model.fit(X, y) 

model.predict(df2) 

將返回:

array(['F', 'M', 'F', 'F', 'M', 'F', 'F', 'M', 'M', 'M'], dtype=object) 

我會強烈建議你閱讀this

相關問題