code: def test_header_and_names(self):
      file_path = os.path.join(self.resource_path, "orca/data/csv")
      # Default header="infer"
      data_shard = bigdl.orca.data.pandas.read_csv(file_path)
      data = data_shard.collect()
      assert len(data) == 2, "number of shard should be 2"
      df = data[0]
      assert "location" in df.columns
      file_path = os.path.join(
          self.resource_path, "orca/data/no_header.csv"
      )
      # No header, default to be '0','1','2'
      data_shard = bigdl.orca.data.pandas.read_csv(
          file_path, header=None
      )
      df2 = data_shard.collect()[0]
      assert "0" in df2.columns and "2" in df2.columns
      # Specify names as header
      data_shard = bigdl.orca.data.pandas.read_csv(
          file_path, header=None, names=["ID", "sale_price", "location"]
      )
      df3 = data_shard.collect()[0]
      assert "sale_price" in df3.columns
  
file_path: BigDL/python/orca/test/bigdl/orca/data/test_spark_backend.py
imports: import os.path
  import pytest
  from unittest import TestCase
  import shutil
  import bigdl.orca.data
  import bigdl.orca.data.pandas
  from bigdl.dllib.nncontext import *
  from bigdl.orca.data.transformer import *
label_desc: Use image node_id 2 for calling the TestXShardsSparkBackend obj's underlying member method code with example usage: obj.test_header_and_names() without return types