Я пытался реализовать многоцелевую регрессионную модель, следуя примеру, который я нашел по адресу https://medium.com/@tubelwj/developing- ... beca5dd482#: ~: text = несколько%20target%20variables%3a%20 дюйма%20 мюльти, что%20we%20want%20to 20t%20predict. < /p>
По какой -то причине я не могу установить более одного целевая переменная, как показано в прилагаемом коде. Я подозреваю, что это может быть синтаксическая проблема (я относительно новичок в Python), но не могу понять, где. Кто -нибудь может указать мне в правильном направлении? >
Изменить: я должен был отметить, что код работает так же, как и ожидалось, если я включаю только один столбец. Когда я пытаюсь выбрать несколько столбцов, возникает ошибка. Я не уверен, как я бы применил первый из этих ответов на мою ситуацию. Второй из трех ответов очень близок к моему вопросу, однако решения - это именно то, что я пробовал, и все еще получаю ошибки ниже. < /P>
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
# from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.linear_model import ElasticNet
from sklearn.multioutput import MultiOutputRegressor
from sklearn.tree import DecisionTreeRegressor
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error, mean_absolute_error
batting=pd.read_csv('//Users/richardcartier/Documents/PythonProjects/pybaseball/Predict_MLB_Stats/2002_2024_batting_stats.csv', index_col=0)
batting.dropna(axis=1, how='all', inplace=True) # drops any columns with NaN values (how='all' will drop columns only if ALL its values are NaN)
batting = batting.fillna(0, axis=1) # fill remaining columns' NaN's with zero.
# Get column names as an Index object
column_names = batting.columns
print(column_names.to_list)
# These are what I tried and the resultant errors
#targets = batting['Next_Hits', 'Next_HRs', 'Next_RBIs', 'Next_RS', 'Next_SBs']
# OUTPUT: KeyError: ('Next_Hits', 'Next_HRs', 'Next_RBIs', 'Next_RS', 'Next_SBs')
# targets = batting(['Next_Hits', 'Next_HRs', 'Next_RBIs', 'Next_RS', 'Next_SBs'])
# OUTPUT: TypeError: 'DataFrame' object is not callable
targets = batting('Next_Hits', 'Next_HRs', 'Next_RBIs', 'Next_RS', 'Next_SBs')
# OUTPUT: TypeError: 'DataFrame' object is not callable
< /code>
Для справки, источник (файл CSV с статистикой бейсбольного ватина) определенно включает в себя столбцы, которые я вызываю, как вы можете видеть ниже из терминала. < /p>
< /p>
Подробнее здесь: https://stackoverflow.com/questions/793 ... s-question
Еще один вопрос о регрессии с несколькими целями ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Добавление AWS Amplify в приложение iOS Swift с несколькими целями не работает
Anonymous » » в форуме IOS - 0 Ответы
- 41 Просмотры
-
Последнее сообщение Anonymous
-