Python 如何对dask数据帧中的列重新排序
我正在生成一个dask数据帧Python 如何对dask数据帧中的列重新排序,python,dask,Python,Dask,我正在生成一个dask数据帧 b = dask.bag.read_text(target_files, blocksize=None).map(_getdataframe).to_dataframe(schema_dataframe) 当前_getdataframe返回一个dict。当我对_dataframe执行操作时,列基本上是以随机顺序排列的。有没有一种方法可以从_getdataframe返回一个将导致固定列顺序的对象,或者在返回后廉价地使用列顺序?最终的列顺序是否取决于im传入的sche
b = dask.bag.read_text(target_files, blocksize=None).map(_getdataframe).to_dataframe(schema_dataframe)
当前_getdataframe返回一个dict。当我对_dataframe执行操作时,列基本上是以随机顺序排列的。有没有一种方法可以从_getdataframe返回一个将导致固定列顺序的对象,或者在返回后廉价地使用列顺序?最终的列顺序是否取决于im传入的schema_dataframe或.map的dict结果?您始终可以通过智能索引对列进行重新排序:
b=b[['col1','col2',…]
。您甚至可以按字母顺序对它们进行排序:b=b[sorted(b.columns)]
。一个明显的可能性是在\u getdataframe
中使用集合。orderedict
,而不是标准dict。