pandas.api.interchange.from_dataframe#
- pandas.api.interchange.from_dataframe(df, allow_copy=True)[源代码][源代码]#
从任何支持交换协议的DataFrame构建一个
pd.DataFrame
。备注
对于新的开发,我们强烈推荐使用 Arrow C 数据接口和 Arrow PyCapsule 接口,而不是交换协议
警告
由于严重的实现问题,我们建议仅在以下情况下考虑使用交换协议:
转换为 pandas: 对于 pandas >= 2.0.3
从 pandas 转换:适用于 pandas >= 3.0.0
- 参数:
- dfDataFrameXchg
支持交换协议的对象,即 __dataframe__ 方法。
- allow_copybool, 默认: True
是否允许复制内存以执行转换(如果为false,则请求零拷贝方法)。
- 返回:
- pd.DataFrame
例子
>>> 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
这些方法 (
column_names
,select_columns_by_name
) 应该适用于任何实现了交换协议的数据框库。