code: def test_X_log_transformer():
      """Tests logarithmic data transformer."""
      solubility_dataset = load_solubility_data()
      log_transformer = dc.trans.LogTransformer(
          transform_X=True, dataset=solubility_dataset
      )
      X, y, w, ids = (
          solubility_dataset.X,
          solubility_dataset.y,
          solubility_dataset.w,
          solubility_dataset.ids,
      )
      solubility_dataset = log_transformer.transform(solubility_dataset)
      X_t, y_t, w_t, ids_t = (
          solubility_dataset.X,
          solubility_dataset.y,
          solubility_dataset.w,
          solubility_dataset.ids,
      )
  
      # Check ids are unchanged.
      for id_elt, id_t_elt in zip(ids, ids_t):
          assert id_elt == id_t_elt
      # Check y is unchanged since this is a X transformer
      np.testing.assert_allclose(y, y_t)
      # Check w is unchanged since this is a y transformer
      np.testing.assert_allclose(w, w_t)
      # Check y is now a logarithmic version of itself
      np.testing.assert_allclose(X_t, np.log(X + 1))
  
      # Check that untransform does the right thing.
      np.testing.assert_allclose(log_transformer.untransform(X_t), X)
  
file_path: deepchem/deepchem/trans/tests/test_log_transform.py
imports: import os
  import deepchem
  import pandas
  import numpy
label_desc: Use image node_id 5 for calling a global function with example usage: test_X_log_transformer() without return types