Looks like a Pandas DataFrame
(df)
| 1511 | |
| 1512 | |
| 1513 | def is_dataframe_like(df) -> bool: |
| 1514 | """Looks like a Pandas DataFrame""" |
| 1515 | if (df.__class__.__module__, df.__class__.__name__) == ( |
| 1516 | "pandas.core.frame", |
| 1517 | "DataFrame", |
| 1518 | ): |
| 1519 | # fast exec for most likely input |
| 1520 | return True |
| 1521 | typ = df.__class__ |
| 1522 | return ( |
| 1523 | all(hasattr(typ, name) for name in ("groupby", "head", "merge", "mean")) |
| 1524 | and all(hasattr(df, name) for name in ("dtypes", "columns")) |
| 1525 | and not any(hasattr(typ, name) for name in ("name", "dtype")) |
| 1526 | ) |
| 1527 | |
| 1528 | |
| 1529 | def is_series_like(s) -> bool: |
searching dependent graphs…