code: def test_debias_with_regression():
      df = pd.DataFrame(
          dict(
              x=[1, 1, 1, 2, 2, 2, 3, 3, 3],  # confounder
              t=[3, 3, 4, 2, 2, 3, 1, 1, 2],
              y=[1, 1, 2, 2, 2, 3, 2, 2, 3],
          )
      )
  
      result = debias_with_regression(
          df, "t", "y", ["x"], suffix="_d"
      ).round(3)
  
      expected = pd.DataFrame(
          dict(
              x=[1, 1, 1, 2, 2, 2, 3, 3, 3],
              t=[3, 3, 4, 2, 2, 3, 1, 1, 2],
              y=[1, 1, 2, 2, 2, 3, 2, 2, 3],
              t_d=[2.0, 2.0, 3.0, 2.0, 2.0, 3.0, 2.0, 2.0, 3.0],
              y_d=[1.5, 1.5, 2.5, 2.0, 2.0, 3.0, 1.5, 1.5, 2.5],
          )
      )
  
      pd.testing.assert_frame_equal(expected, result)
  
      result2 = debias_with_regression(
          df, "t", "y", ["x"], suffix="_d", denoise=False
      ).round(3)
  
      pd.testing.assert_frame_equal(
          expected.drop(columns=["y_d"]), result2
      )
  
imports: import pandas
  from fklearn.causal.debias import debias_with_regression_formula, debias_with_regression, debias_with_double_ml, debias_with_fixed_effects
label_desc: Use image node_id 2 for calling a global function with example usage: test_debias_with_regression() without return types