docstr: expects a pandas dataframe
docstr_tok: ["expects","a","pandas","dataframe"]
code: def verify_parametric_single_step_except_rewards(self, df):
      """expects a pandas dataframe"""
      self.assertEq(
          df["sequence_number"], np.array([1, 2, 3, 4], dtype="int32")
      )
  
      state_features_presence = np.array(
          [
              [True, False, False, False, False],
              [False, True, False, False, False],
              [False, False, True, False, False],
              [False, False, False, True, False],
          ],
          dtype="bool",
      )
      self.assertEq(
          df["state_features_presence"], state_features_presence
      )
      state_features = np.array(
          [
              [1.0, 0.0, 0.0, 0.0, 0.0],
              [0.0, 1.0, 0.0, 0.0, 0.0],
              [0.0, 0.0, 1.0, 0.0, 0.0],
              [0.0, 0.0, 0.0, 1.0, 0.0],
          ],
          dtype="float32",
      )
      self.assertEqWithPresence(
          df["state_features"], state_features_presence, state_features
      )
  
      action_presence = np.array(
          [
              [True, False, False, False],
              [False, True, False, False],
              [False, False, True, False],
              [False, False, False, True],
          ],
          dtype="bool",
      )
      self.assertEq(df["action_presence"], action_presence)
  
      action = np.array(
          [
              [1.0, 0.0, 0.0, 0.0],
              [0.0, 1.0, 0.0, 0.0],
              [0.0, 0.0, 1.0, 0.0],
              [0.0, 0.0, 0.0, 1.0],
          ],
          dtype="float32",
      )
      self.assertEqWithPresence(df["action"], action_presence, action)
      self.assertEq(
          df["action_probability"],
          np.array([0.3, 0.4, 0.5, 0.6], dtype="float32"),
      )
      self.assertEq(
          df["not_terminal"], np.array([1, 1, 1, 0], dtype="bool")
      )
      next_state_features_presence = np.array(
          [
              [False, True, False, False, False],
              [False, False, True, False, False],
              [False, False, False, True, False],
              [False, False, False, False, True],
          ],
          dtype="bool",
      )
      self.assertEq(
          df["next_state_features_presence"],
          next_state_features_presence,
      )
      next_state_features = np.array(
          [
              [0.0, 1.0, 0.0, 0.0, 0.0],
              [0.0, 0.0, 1.0, 0.0, 0.0],
              [0.0, 0.0, 0.0, 1.0, 0.0],
              [0.0, 0.0, 0.0, 0.0, 1.0],
          ],
          dtype="float32",
      )
      self.assertEqWithPresence(
          df["next_state_features"],
          next_state_features_presence,
          next_state_features,
      )
  
      next_action_presence = np.array(
          [
              [False, True, False, False],
              [False, False, True, False],
              [False, False, False, True],
              [False, False, False, False],
          ],
          dtype="bool",
      )
  
      next_action = np.array(
          [
              [0.0, 1.0, 0.0, 0.0],
              [0.0, 0.0, 1.0, 0.0],
              [0.0, 0.0, 0.0, 1.0],
              [0.0, 0.0, 0.0, 0.0],  # this col can be anything
          ],
          dtype="float32",
      )
      self.assertEqWithPresence(
          df["next_action"], next_action_presence, next_action
      )
      self.assertEq(df["time_diff"], np.array([1, 3, 1, 1]))
      self.assertEq(df["step"], np.array([1, 1, 1, 1]))
  
file_path: ReAgent/reagent/test/workflow/test_query_data_parametric.py
imports: import logging
  import unittest
  import numpy
  import pytest
  from pyspark.sql.functions import asc
  from reagent.data.oss_data_fetcher import OssDataFetcher
  from reagent.test.test_data.ex_mdps import generate_parametric_mdp_pandas_df
  from reagent.test.workflow.reagent_sql_test_base import ReagentSQLTestBase
  from reagent.workflow.types import Dataset, TableSpec
label_desc: Use image node_id 5 for calling the TestQueryDataParametric obj's underlying member method code with example usage: obj.verify_parametric_single_step_except_rewards(df) without return types