code: def test_weird_chars_in_column_names_no_impact_on_other_preprocessors():
      """Assert that CleanColumnNames doesn't impact other preprocessors
      and that it meets the goal of making LightGBM work in all cases.
      """
      # https://github.com/pycaret/pycaret/issues/3324
  
      # Dataset snippet from https://www.kaggle.com/datasets/shivamb/machine-predictive-maintenance-classification
      dataset = """UDI,Product ID,Type,Air temperature [K],Process temperature [K],Rotational speed [rpm],Torque [Nm],Tool wear [min],Target,Failure Type
      1,M14860,M,298.1,308.6,1551,42.8,0,0,No Failure
      2,L47181,L,298.2,308.7,1408,46.3,3,0,No Failure
      3,L47182,L,298.1,308.5,1498,49.4,5,0,No Failure
      4,L47183,L,298.2,308.6,1433,39.5,7,0,No Failure
      5,L47184,L,298.2,308.7,1408,40,9,0,No Failure
      6,M14865,M,298.1,308.6,1425,41.9,11,0,No Failure
      7,L47186,L,298.1,308.6,1558,42.4,14,0,No Failure
      8,L47187,L,298.1,308.6,1527,40.2,16,0,No Failure
      9,M14868,M,298.3,308.7,1667,28.6,18,0,No Failure
      10,M14869,M,298.5,309,1741,28,21,0,No Failure
      """
      buffer = io.StringIO(dataset)
      data = pd.read_csv(buffer)
      exp = pycaret.classification.ClassificationExperiment()
      exp.setup(data=data, target="Target", index="UDI", fold=2)
      exp.create_model("lightgbm")
  
imports: import io
  import numpy
  import pandas
  import pytest
  from imblearn.over_sampling import ADASYN
  from scipy.sparse import csr_matrix
  from sklearn.decomposition import PCA
  from sklearn.ensemble import RandomForestClassifier
  from sklearn.pipeline import Pipeline
  from sklearn.preprocessing import StandardScaler
  import pycaret.classification
  import pycaret.datasets
  import pycaret.regression
label_desc: Use image node_id 15 for calling a global function with example usage: test_weird_chars_in_column_names_no_impact_on_other_preprocessors() without return types