code: def test_given_fitted_linear_mechanism_with_input_change_when_evaluate_unit_change_linear_input_only_then_returns_correct_attributions():
      num_rows = 100
      A1 = np.random.normal(size=num_rows)
      B1 = np.random.normal(size=num_rows)
      C1 = 3 * A1 + 2 * B1
  
      A2 = np.random.normal(size=num_rows)
      B2 = np.random.normal(size=num_rows)
      C2 = 3 * A2 + 2 * B2
  
      background_df = pd.DataFrame(data=dict(A=A1, B=B1, C=C1))
      foreground_df = pd.DataFrame(data=dict(A=A2, B=B2, C=C2))
  
      fitted_linear_reg = LinearRegression()
      fitted_linear_reg.coef_ = np.array([3, 2])
  
      actual_contributions = unit_change_linear_input_only(
          SklearnLinearRegressionModel(fitted_linear_reg),
          background_df,
          foreground_df,
          ["A", "B"],
      )
      expected_contributions = pd.DataFrame(
          data=dict(A=3 * (A2 - A1), B=2 * (B2 - B1))
      )
      np.testing.assert_array_almost_equal(
          actual_contributions, expected_contributions, decimal=1
      )
  
imports: import numpy
  import pandas
  import pytest
  from flaky import flaky
  from sklearn.ensemble import RandomForestRegressor
  from sklearn.exceptions import NotFittedError
  from sklearn.linear_model import LinearRegression
  from dowhy.gcm.ml.regression import SklearnRegressionModel
  from dowhy.gcm.shapley import ShapleyConfig
  from dowhy.gcm.unit_change import SklearnLinearRegressionModel, unit_change, unit_change_linear, unit_change_linear_input_only, unit_change_nonlinear, unit_change_nonlinear_input_only
label_desc: Use image node_id 6 for calling a global function with example usage: test_given_fitted_linear_mechanism_with_input_change_when_evaluate_unit_change_linear_input_only_then_returns_correct_attributions() without return types