code: def test_user_provides_grouping_label_name_and_variable_list(
      df_enc_big,
  ):
      # test case 2: user provides alternative grouping value and variable list
      encoder = RareLabelEncoder(
          tol=0.15,
          n_categories=5,
          variables=["var_A", "var_B"],
          replace_with="Other",
      )
      X = encoder.fit_transform(df_enc_big)
  
      # expected output
      df = {
          "var_A": ["A"] * 6
          + ["B"] * 10
          + ["Other"] * 4
          + ["D"] * 10
          + ["Other"] * 4
          + ["G"] * 6,
          "var_B": ["A"] * 10
          + ["B"] * 6
          + ["Other"] * 4
          + ["D"] * 10
          + ["Other"] * 4
          + ["G"] * 6,
          "var_C": ["A"] * 4
          + ["B"] * 6
          + ["C"] * 10
          + ["D"] * 10
          + ["E"] * 2
          + ["F"] * 2
          + ["G"] * 6,
      }
      df = pd.DataFrame(df)
  
      # test init params
      assert encoder.tol == 0.15
      assert encoder.n_categories == 5
      assert encoder.replace_with == "Other"
      assert encoder.variables == ["var_A", "var_B"]
      # test fit attr
      assert encoder.variables_ == ["var_A", "var_B"]
      assert encoder.n_features_in_ == 3
      # test transform output
      pd.testing.assert_frame_equal(X, df)
  
file_path: feature_engine/tests/test_encoding/test_rare_label_encoder.py
imports: import pandas
  import pytest
  from feature_engine.encoding import RareLabelEncoder
label_desc: Use image node_id 2 for calling a global function with example usage: test_user_provides_grouping_label_name_and_variable_list(df_enc_big) without return types