Skip to content

[BUG]: pycaret create duplicates #3616

@celestinoxp

Description

@celestinoxp

pycaret version checks

Issue Description

My notebook has several setups, there comes a time when 1 of the setups creates duplicate values, I think it is in the automatic transformation, and then the command xgboost = create_model('xgboost') ends up giving an error.

As xgboost doesn't show what the resources are, I already opened an issue on their github, but while they don't solve it, I changed the code directly on my laptop, so I can know what the resources are.

if i convert to integers this problem doesn't happen

Reproducible Example

setup(data=dados_treino, target = 'n2', fold_shuffle=False, polynomial_features=False, ignore_features=['data', 'n3', 'n4', 'n5', 'ns', 'soma', 'posicao_chave', 'linha1', 'linha2', 'linha3', 'linha4', 'linha5', 'linha6', 'linha7', 'coluna1', 'coluna2', 'coluna3', 'coluna4', 'coluna5', 'coluna6', 'coluna7', 'cor_n1', 'cor_n2', 'cor_n3', 'cor_n4', 'cor_n5', 'n1_p_i', 'n2_p_i', 'n3_p_i', 'n4_p_i', 'n5_p_i', 'anel_1', 'anel_2', 'anel_3', 'qx1', 'qx2', 'qx3', 'qx4',
           'qq1', 'qq2', 'qq3', 'qq4', 'q1', 'q2', 'q3', 'q4', 'qp1', 'qp2', 'qp3', 'qp4', 'qp5', 'fppc_n1', 'fppc_n2', 'fppc_n3', 'fppc_n4', 'fppc_n5',
           'n1_primo', 'n2_primo', 'n3_primo', 'n4_primo', 'n5_primo', 'n1_sdi', 'n2_sdi', 'n3_sdi', 'n4_sdi', 'n5_sdi', 'n_1_10', 'n_11_20', 'n_21_30', 'n_31_40',
           'n_41_49', 'num_sorteios_last_premio', 'n1_ausencias', 'n2_ausencias', 'n3_ausencias', 'n4_ausencias', 'n5_ausencias', 'n1_media_last5', 
           'n2_media_last5', 'n3_media_last5', 'n4_media_last5', 'n5_media_last5', 'n1_media_last10', 'n2_media_last10', 'n3_media_last10', 'n4_media_last10',
           'n5_media_last10', 'n1_n2_ausencias', 'n1_n3_ausencias', 'n1_n4_ausencias', 'n1_n5_ausencias', 'n2_n3_ausencias', 'n2_n4_ausencias', 'n2_n5_ausencias',
           'n3_n4_ausencias', 'n3_n5_ausencias', 'n4_n5_ausencias'], fold_strategy='timeseries', use_gpu=True, normalize=True, session_id=123)

xgboost = create_model('xgboost')

Expected Behavior

without stop with error

Actual Results

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[89], line 1
----> 1 xgboost = create_model('xgboost')

File ~\anaconda3\lib\site-packages\pycaret\utils\generic.py:965, in check_if_global_is_not_none.<locals>.decorator.<locals>.wrapper(*args, **kwargs)
    963     if globals_d[name] is None:
    964         raise ValueError(message)
--> 965 return func(*args, **kwargs)

File ~\anaconda3\lib\site-packages\pycaret\classification\functional.py:1009, in create_model(estimator, fold, round, cross_validation, fit_kwargs, groups, probability_threshold, experiment_custom_tags, engine, verbose, return_train_score, **kwargs)
    880 @check_if_global_is_not_none(globals(), _CURRENT_EXPERIMENT_DECORATOR_DICT)
    881 def create_model(
    882     estimator: Union[str, Any],
   (...)
    893     **kwargs,
    894 ) -> Any:
    895     """
    896     This function trains and evaluates the performance of a given estimator
    897     using cross validation. The output of this function is a score grid with
   (...)
   1006 
   1007     """
-> 1009     return _CURRENT_EXPERIMENT.create_model(
   1010         estimator=estimator,
   1011         fold=fold,
   1012         round=round,
   1013         cross_validation=cross_validation,
   1014         fit_kwargs=fit_kwargs,
   1015         groups=groups,
   1016         probability_threshold=probability_threshold,
   1017         experiment_custom_tags=experiment_custom_tags,
   1018         engine=engine,
   1019         verbose=verbose,
   1020         return_train_score=return_train_score,
   1021         **kwargs,
   1022     )

File ~\anaconda3\lib\site-packages\pycaret\classification\oop.py:1354, in ClassificationExperiment.create_model(self, estimator, fold, round, cross_validation, fit_kwargs, groups, experiment_custom_tags, probability_threshold, engine, verbose, return_train_score, **kwargs)
   1351     self._set_engine(estimator=estimator, engine=engine, severity="error")
   1353 try:
-> 1354     return_values = super().create_model(
   1355         estimator=estimator,
   1356         fold=fold,
   1357         round=round,
   1358         cross_validation=cross_validation,
   1359         fit_kwargs=fit_kwargs,
   1360         groups=groups,
   1361         verbose=verbose,
   1362         experiment_custom_tags=experiment_custom_tags,
   1363         probability_threshold=probability_threshold,
   1364         return_train_score=return_train_score,
   1365         **kwargs,
   1366     )
   1367 finally:
   1368     if engine is not None:
   1369         # Reset the models back to the default engines

File ~\anaconda3\lib\site-packages\pycaret\internal\pycaret_experiment\supervised_experiment.py:1751, in _SupervisedExperiment.create_model(self, estimator, fold, round, cross_validation, predict, fit_kwargs, groups, refit, probability_threshold, experiment_custom_tags, verbose, return_train_score, **kwargs)
   1739 # TODO improve error message
   1740 assert not any(
   1741     x
   1742     in (
   (...)
   1749     for x in kwargs
   1750 )
-> 1751 return self._create_model(
   1752     estimator=estimator,
   1753     fold=fold,
   1754     round=round,
   1755     cross_validation=cross_validation,
   1756     predict=predict,
   1757     fit_kwargs=fit_kwargs,
   1758     groups=groups,
   1759     refit=refit,
   1760     probability_threshold=probability_threshold,
   1761     experiment_custom_tags=experiment_custom_tags,
   1762     verbose=verbose,
   1763     return_train_score=return_train_score,
   1764     **kwargs,
   1765 )

File ~\anaconda3\lib\site-packages\pycaret\internal\pycaret_experiment\supervised_experiment.py:1519, in _SupervisedExperiment._create_model(self, estimator, fold, round, cross_validation, predict, fit_kwargs, groups, refit, probability_threshold, experiment_custom_tags, verbose, system, add_to_model_list, X_train_data, y_train_data, metrics, display, model_only, return_train_score, **kwargs)
   1516         return model, model_fit_time
   1517     return model
-> 1519 model, model_fit_time, model_results, _ = self._create_model_with_cv(
   1520     model,
   1521     data_X,
   1522     data_y,
   1523     fit_kwargs,
   1524     round,
   1525     cv,
   1526     groups,
   1527     metrics,
   1528     refit,
   1529     system,
   1530     display,
   1531     return_train_score=return_train_score,
   1532 )
   1534 # end runtime
   1535 runtime_end = time.time()

File ~\anaconda3\lib\site-packages\pycaret\internal\pycaret_experiment\supervised_experiment.py:1114, in _SupervisedExperiment._create_model_with_cv(self, model, data_X, data_y, fit_kwargs, round, cv, groups, metrics, refit, system, display, return_train_score)
   1112 model_fit_start = time.time()
   1113 with redirect_output(self.logger):
-> 1114     scores = cross_validate(
   1115         pipeline_with_model,
   1116         data_X,
   1117         data_y,
   1118         cv=cv,
   1119         groups=groups,
   1120         scoring=metrics_dict,
   1121         fit_params=fit_kwargs,
   1122         n_jobs=n_jobs,
   1123         return_train_score=return_train_score,
   1124         error_score=0,
   1125     )
   1126 model_fit_end = time.time()
   1127 model_fit_time = np.array(model_fit_end - model_fit_start).round(2)

File ~\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:285, in cross_validate(estimator, X, y, groups, scoring, cv, n_jobs, verbose, fit_params, pre_dispatch, return_train_score, return_estimator, error_score)
    265 parallel = Parallel(n_jobs=n_jobs, verbose=verbose, pre_dispatch=pre_dispatch)
    266 results = parallel(
    267     delayed(_fit_and_score)(
    268         clone(estimator),
   (...)
    282     for train, test in cv.split(X, y, groups)
    283 )
--> 285 _warn_or_raise_about_fit_failures(results, error_score)
    287 # For callabe scoring, the return type is only know after calling. If the
    288 # return type is a dictionary, the error scores can now be inserted with
    289 # the correct key.
    290 if callable(scoring):

File ~\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:367, in _warn_or_raise_about_fit_failures(results, error_score)
    360 if num_failed_fits == num_fits:
    361     all_fits_failed_message = (
    362         f"\nAll the {num_fits} fits failed.\n"
    363         "It is very likely that your model is misconfigured.\n"
    364         "You can try to debug the error by setting error_score='raise'.\n\n"
    365         f"Below are more details about the failures:\n{fit_errors_summary}"
    366     )
--> 367     raise ValueError(all_fits_failed_message)
    369 else:
    370     some_fits_failed_message = (
    371         f"\n{num_failed_fits} fits failed out of a total of {num_fits}.\n"
    372         "The score on these train-test partitions for these parameters"
   (...)
    376         f"Below are more details about the failures:\n{fit_errors_summary}"
    377     )

ValueError: 
All the 10 fits failed.
It is very likely that your model is misconfigured.
You can try to debug the error by setting error_score='raise'.

Below are more details about the failures:
--------------------------------------------------------------------------------
4 fits failed with the following error:
Traceback (most recent call last):
  File "C:\Users\celes\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py", line 686, in _fit_and_score
    estimator.fit(X_train, y_train, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 260, in fit
    fitted_estimator = self._memory_fit(
  File "C:\Users\celes\anaconda3\lib\site-packages\joblib\memory.py", line 655, in __call__
    return self._cached_call(args, kwargs)[0]
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 398, in _cached_call
    out, metadata = self.call(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 309, in call
    output = self.func(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 66, in _fit_one
    transformer.fit(*args, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 1502, in fit
    train_dmatrix, evals = _wrap_evaluation_matrices(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 527, in _wrap_evaluation_matrices
    train_dmatrix = create_dmatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 950, in _create_dmatrix
    return QuantileDMatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1411, in __init__
    self._init(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1470, in _init
    it.reraise()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 470, in reraise
    raise exc  # pylint: disable=raising-bad-type
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 451, in _handle_exception
    return fn()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 523, in <lambda>
    return self._handle_exception(lambda: self.next(input_data), 0)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\data.py", line 1252, in next
    input_data(**self.kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 515, in input_data
    self.proxy.set_info(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 825, in set_info
    self.feature_names = feature_names
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1162, in feature_names
    raise ValueError('feature_names must be unique. Duplicates found: {}'.format(duplicates)) #line changed
ValueError: feature_names must be unique. Duplicates found: ['n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual']

--------------------------------------------------------------------------------
2 fits failed with the following error:
Traceback (most recent call last):
  File "C:\Users\celes\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py", line 686, in _fit_and_score
    estimator.fit(X_train, y_train, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 260, in fit
    fitted_estimator = self._memory_fit(
  File "C:\Users\celes\anaconda3\lib\site-packages\joblib\memory.py", line 655, in __call__
    return self._cached_call(args, kwargs)[0]
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 398, in _cached_call
    out, metadata = self.call(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 309, in call
    output = self.func(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 66, in _fit_one
    transformer.fit(*args, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 1502, in fit
    train_dmatrix, evals = _wrap_evaluation_matrices(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 527, in _wrap_evaluation_matrices
    train_dmatrix = create_dmatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 950, in _create_dmatrix
    return QuantileDMatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1411, in __init__
    self._init(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1470, in _init
    it.reraise()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 470, in reraise
    raise exc  # pylint: disable=raising-bad-type
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 451, in _handle_exception
    return fn()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 523, in <lambda>
    return self._handle_exception(lambda: self.next(input_data), 0)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\data.py", line 1252, in next
    input_data(**self.kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 515, in input_data
    self.proxy.set_info(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 825, in set_info
    self.feature_names = feature_names
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1162, in feature_names
    raise ValueError('feature_names must be unique. Duplicates found: {}'.format(duplicates)) #line changed
ValueError: feature_names must be unique. Duplicates found: ['n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual']

--------------------------------------------------------------------------------
4 fits failed with the following error:
Traceback (most recent call last):
  File "C:\Users\celes\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py", line 686, in _fit_and_score
    estimator.fit(X_train, y_train, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 260, in fit
    fitted_estimator = self._memory_fit(
  File "C:\Users\celes\anaconda3\lib\site-packages\joblib\memory.py", line 655, in __call__
    return self._cached_call(args, kwargs)[0]
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 398, in _cached_call
    out, metadata = self.call(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\memory.py", line 309, in call
    output = self.func(*args, **kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\pycaret\internal\pipeline.py", line 66, in _fit_one
    transformer.fit(*args, **fit_params)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 1502, in fit
    train_dmatrix, evals = _wrap_evaluation_matrices(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 527, in _wrap_evaluation_matrices
    train_dmatrix = create_dmatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\sklearn.py", line 950, in _create_dmatrix
    return QuantileDMatrix(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1411, in __init__
    self._init(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1470, in _init
    it.reraise()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 470, in reraise
    raise exc  # pylint: disable=raising-bad-type
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 451, in _handle_exception
    return fn()
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 523, in <lambda>
    return self._handle_exception(lambda: self.next(input_data), 0)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\data.py", line 1252, in next
    input_data(**self.kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 515, in input_data
    self.proxy.set_info(
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 609, in inner_f
    return func(**kwargs)
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 825, in set_info
    self.feature_names = feature_names
  File "C:\Users\celes\anaconda3\lib\site-packages\xgboost\core.py", line 1162, in feature_names
    raise ValueError('feature_names must be unique. Duplicates found: {}'.format(duplicates)) #line changed
ValueError: feature_names must be unique. Duplicates found: ['n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_desconhecido', 'n1_sdi_anterior_1_desconhecido', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_subiu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_desceu', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_igual', 'n1_sdi_anterior_1_desconhecido', 'n1_sdi_anterior_1_desconhecido', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_igual', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_desceu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_2_subiu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_desceu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_subiu', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_desconhecido', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_3_igual', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_subiu', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_igual', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desceu', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_4_desconhecido', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_desceu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_subiu', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_5_igual', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_subiu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_desceu', 'n1_sdi_anterior_6_igual', 'n1_sdi_anterior_6_igual']

Installed Versions

System: python: 3.10.11 | packaged by Anaconda, Inc. | (main, Apr 20 2023, 18:56:50) [MSC v.1916 64 bit (AMD64)] executable: C:\Users\celes\anaconda3\python.exe machine: Windows-10-10.0.22621-SP0

PyCaret required dependencies:
pip: 23.1.2
setuptools: 68.0.0
pycaret: 3.0.2
IPython: 8.14.0
ipywidgets: 8.0.6
tqdm: 4.65.0
numpy: 1.25.0
pandas: 2.1.0.dev0+1029.gaf83376640
jinja2: 3.1.2
scipy: 1.10.1
joblib: 1.3.0.dev0
sklearn: 1.2.2
pyod: 1.0.9
imblearn: 0.10.1
category_encoders: 2.6.1
lightgbm: 3.3.5
numba: 0.57.1
requests: 2.31.0
matplotlib: 3.7.1
scikitplot: 0.3.7
yellowbrick: 1.5
plotly: 5.15.0
kaleido: 0.2.1
statsmodels: 0.14.0
sktime: 0.19.2
tbats: 1.1.3
pmdarima: 2.0.3
psutil: 5.9.5

PyCaret optional dependencies:
shap: 0.41.0
interpret: 0.4.2
umap: 0.5.3
pandas_profiling: 4.3.1
explainerdashboard: 0.4.2.2
autoviz: 0.1.720
fairlearn: 0.8.0
xgboost: 2.0.0-dev
catboost: 1.2
kmodes: 0.12.2
mlxtend: 0.22.0
statsforecast: 1.5.0
tune_sklearn: 0.4.5
ray: 2.5.1
hyperopt: 0.2.7
optuna: 3.2.0
skopt: 0.9.0
mlflow: 2.4.1
gradio: 3.35.2
fastapi: 0.98.0
uvicorn: 0.22.0
m2cgen: 0.10.0
evidently: 0.3.3
fugue: 0.8.5
streamlit: Not installed
prophet: Not installed

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions