docs: def almost_equal(f: DataFrame, g: DataFrame) -> bool:
      """
      Return ``True`` if and only if the given DataFrames are equal after
      sorting their columns names, sorting their values, and
      reseting their indices.
      """
      if f.empty or g.empty:
          return f.equals(g)
      else:
          # Put in canonical order
          F = (
              f.sort_index(axis=1)
              .sort_values(list(f.columns))
              .reset_index(drop=True)
          )
          G = (
              g.sort_index(axis=1)
              .sort_values(list(g.columns))
              .reset_index(drop=True)
          )
          return F.equals(G)