Я пытаюсь использовать пример dataFrame:
data = [['Alex','USA',0],['Bob','India',1],['Clarke','SriLanka',0]]
df = pd.DataFrame(data,columns=['Name','Country','Traget'])
Теперь я использовал get_dummies для преобразования строкового столбца в целое число:
column_names=['Name','Country']
one_hot = pd.get_dummies(df[column_names])
После преобразования столбцы:Возраст, Name_Alex, Name_Bob, Name_Clarke, Country_India, Country_SriLanka, Country_USA
Разделение данных.
x=df[["Name_Alex","Name_Bob","Name_Clarke","Country_India","Country_SriLanka","Country_USA"]].values
y=df['Age'].values
Разделение набора данных в поезде и тестирование
from sklearn.cross_validation import train_test_split
x_train,x_test,y_train,y_test=train_test_split(x,y,train_size=float(0.5),random_state=0)
Логистическая регрессия
from sklearn.linear_model import LogisticRegression
logreg = LogisticRegression()
logreg.fit(x_train, y_train)
Теперь модель обучена.
Для прогнозирования, скажем, я хочу предсказать "цель", указав "Имя" и "Страна".
Как: ["Алекс", "США"].
Предсказание.
Если бы я использовал это:
logreg.predict([["Alex","USA"]).
, очевидно, это не будет работать.
Вопрос1) Как проверить прогноз после применения однократного кодирования во время обучения?
Вопрос2) Как выполнить прогноз на примере файла CSV, который содержит только «Имя» и «Страна»?