首页 > 解决方案 > 如何将 Pandas 系列转换为 Numpy 数组并保持秩序?

问题描述

我有一个pandas看起来像这样的系列:

cash          50121.599128
num_shares      436.000000
cost_basis      114.400002
open_price      113.650002
close_10        114.360001
close_9         115.769997
close_8         114.800003
close_7         114.040001
close_6         115.680000
close_5         115.930000
close_4         115.430000
close_3         113.339996
close_2         114.870003
close_1         114.050003
dtype: float64

我想把它转换成一个numpy数组,所以我在做:

next_state_val = np.array([next_state.values])

但是,不能保证我series的订单总是相同的。如何在多个系列中保持相同的顺序?

标签: pythonpandasnumpy

解决方案


假设索引总是相同的(但不一定以相同的顺序出现),您可以.sort_index()在系列上使用。这将确保该系列每次都按其索引进行排序。

https://pandas.pydata.org/pandas-docs/version/0.17.0/generated/pandas.Series.sort_index.html


推荐阅读