pandas.api.interchange.from_dataframe#

pandas.api.interchange.from_dataframe(df, allow_copy=True)[source]#

Build a pd.DataFrame from any DataFrame supporting the interchange protocol.

Parameters:
dfDataFrameXchg

Object supporting the interchange protocol, i.e. __dataframe__ method.

allow_copybool, default: True

Whether to allow copying the memory to perform the conversion (if false then zero-copy approach is requested).

Returns:
pd.DataFrame

Examples

>>> df_not_necessarily_pandas = pd.DataFrame({"A": [1, 2], "B": [3, 4]})
>>> interchange_object = df_not_necessarily_pandas.__dataframe__()
>>> interchange_object.column_names()
Index(['A', 'B'], dtype='object')
>>> df_pandas = pd.api.interchange.from_dataframe(
...     interchange_object.select_columns_by_name(["A"])
... )
>>> df_pandas
     A
0    1
1    2

These methods (column_names, select_columns_by_name) should work for any dataframe library which implements the interchange protocol.