code: def test_pd_dataframe_to_numpy():
      input_data = pd.DataFrame({"column_1": [1, 2, 3, 4]})
      expected_output = np.array([1, 2, 3, 4])
      actual_output = _convert_batch_type_to_numpy(input_data)
      np.testing.assert_array_equal(expected_output, actual_output)
  
      input_data = pd.DataFrame(
          {TENSOR_COLUMN_NAME: TensorArray(np.arange(12).reshape(3, 4))}
      )
      expected_output = np.arange(12).reshape(3, 4)
      actual_output = _convert_batch_type_to_numpy(input_data)
      np.testing.assert_array_equal(expected_output, actual_output)
  
      input_data = pd.DataFrame(
          {"column_1": [1, 2, 3, 4], "column_2": [1, -1, 1, -1]}
      )
      expected_output = {
          "column_1": np.array([1, 2, 3, 4]),
          "column_2": np.array([1, -1, 1, -1]),
      }
      actual_output = _convert_batch_type_to_numpy(input_data)
      assert expected_output.keys() == actual_output.keys()
      np.testing.assert_array_equal(
          expected_output["column_1"], actual_output["column_1"]
      )
      np.testing.assert_array_equal(
          expected_output["column_2"], actual_output["column_2"]
      )
  
imports: import pytest
  import warnings
  import pandas
  import numpy
  import pyarrow
  from ray.air._internal.torch_utils import convert_ndarray_to_torch_tensor
  from ray.air.constants import TENSOR_COLUMN_NAME
  from ray.air.util.data_batch_conversion import _convert_batch_type_to_pandas, _convert_pandas_to_batch_type, _convert_batch_type_to_numpy, _cast_ndarray_columns_to_tensor_extension, _cast_tensor_columns_to_ndarrays
  from ray.air.util.data_batch_conversion import BatchFormat
  from ray.air.util.tensor_extensions.pandas import TensorArray
  from ray.air.util.tensor_extensions.arrow import ArrowTensorArray
label_desc: Use image node_id 4 for calling a global function with example usage: test_pd_dataframe_to_numpy() without return types