1
假設我有兩個數據幀df1和df2。在df1中,我有幾個列,如userid,sexid,位置等。在df2中,除了sexid,我需要使用一些預測算法來填充所有與df1相同的列。 我只是一個初學者,我嘗試了另一種問題。因此,歡迎任何可能幫助我破解它的建議或有用的參考資料。如何使用舊數據幀中的信息預測新Python數據框中列的值
假設我有兩個數據幀df1和df2。在df1中,我有幾個列,如userid,sexid,位置等。在df2中,除了sexid,我需要使用一些預測算法來填充所有與df1相同的列。 我只是一個初學者,我嘗試了另一種問題。因此,歡迎任何可能幫助我破解它的建議或有用的參考資料。如何使用舊數據幀中的信息預測新Python數據框中列的值
小例子:
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。
如果您不瞭解這些人的特徵(即如果您沒有數據可以通過您的模型),您如何預測'df2'中的'sexid'? – blacksite
哦,我混了點東西。在我的'df2'中,我也有'df1'中的所有列,因爲我需要預測它,所以我沒有'sexid'。我將編輯我的帖子。感謝您指出我的錯誤:) –
尋找sklearn包文檔可能是一個好的開始(在你的情況下,你需要一個分類器) –