code: def test_prepare_for_training(sagemaker_session):
      pca = PCA(
          num_components=55,
          sagemaker_session=sagemaker_session,
          **COMMON_ARGS,
      )
  
      train = [
          [1.0, 2.0, 3.0],
          [4.0, 5.0, 6.0],
          [7.0, 8.0, 8.0],
          [44.0, 55.0, 66.0],
      ]
      labels = [99, 85, 87, 2]
      records = pca.record_set(np.array(train), np.array(labels))
  
      pca._prepare_for_training(records, mini_batch_size=1)
      assert pca.feature_dim == 3
      assert pca.mini_batch_size == 1
  
imports: from __future__ import absolute_import
  import numpy
  import pytest
  from mock import ANY, Mock, patch, call
  from sagemaker import image_uris
  from sagemaker.amazon.pca import PCA
  from sagemaker.amazon.amazon_estimator import upload_numpy_to_s3_shards, _build_shards, FileSystemRecordSet
  from sagemaker.session_settings import SessionSettings
  from tests.unit import DEFAULT_S3_OBJECT_KEY_PREFIX_NAME, DEFAULT_S3_BUCKET_NAME, _test_default_bucket_and_prefix_combinations
label_desc: Use image node_id 9 for calling a global function with example usage: test_prepare_for_training(sagemaker_session) without return types