code: def test_replace_dataframe():
      df = pd.DataFrame(
          {
              "id": range(4),
              "full_name": [
                  "Mr. John Doe",
                  "Doe, Mrs. Jane",
                  "James Brown",
                  "Ms. Paige Turner",
              ],
              "email": [
                  "john.smith@example.com",
                  np.nan,
                  "team@featuretools.com",
                  "junk@example.com",
              ],
              "phone_number": [
                  "5555555555",
                  "555-555-5555",
                  "1-(555)-555-5555",
                  "555-555-5555",
              ],
              "age": pd.Series([33, None, 33, 57], dtype="Int64"),
              "signup_date": [pd.to_datetime("2020-09-01")] * 4,
              "is_registered": pd.Series(
                  [True, False, True, None], dtype="boolean"
              ),
          },
      )
  
      df.ww.init(name="table", index="id")
      es = EntitySet("es")
      es.add_dataframe(df)
      original_schema = es["table"].ww.schema
  
      new_df = df.iloc[2:]
      es.replace_dataframe("table", new_df)
  
      assert len(es["table"]) == 2
      assert es["table"].ww.schema == original_schema
  
imports: from datetime import datetime
  import numpy
  import pandas
  import pytest
  from woodwork.exceptions import TypeConversionError
  from woodwork.logical_types import Boolean, Categorical, Datetime, Double, Integer, NaturalLanguage
  from featuretools.entityset.entityset import LTI_COLUMN_NAME, EntitySet
  from featuretools.tests.testing_utils import to_pandas
  from featuretools.utils.gen_utils import Library, import_or_none, is_instance
label_desc: Use image node_id 21 for calling a global function with example usage: test_replace_dataframe() without return types