Converting pandas index to numpy array. Python
本问题已经有最佳答案,请猛点这里访问。
我想将数据帧的索引列转换为数组,但我不确定如何处理它。我已经将第二列转换为数组,但由于某种原因,它在第一列中也不起作用。以下是我试图转换索引列的方式:
1 | time = df1.as_matrix(columns = df1.columns[:,0]) |
但我得到
1 | too many indices for array |
这是我的数据框架
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | df1 Out[13]: 0 2015-11-19 23:59:54.500 -20.186533 2015-11-19 23:59:54.625 -20.272575 2015-11-19 23:59:54.750 -20.185249 2015-11-19 23:59:54.875 -20.247126 2015-11-19 23:59:55.000 -20.205975 2015-11-19 23:59:55.125 -20.281376 2015-11-19 23:59:55.250 -20.238962 2015-11-19 23:59:55.375 -20.300100 2015-11-19 23:59:55.500 -20.311625 2015-11-19 23:59:55.625 -20.264126 2015-11-19 23:59:55.750 -20.266762 2015-11-19 23:59:55.875 -20.224825 2015-11-19 23:59:56.000 -20.211288 2015-11-19 23:59:56.125 -20.163288 2015-11-19 23:59:56.250 -20.254587 2015-11-19 23:59:56.375 -20.125738 2015-11-19 23:59:56.500 -20.146749 2015-11-19 23:59:56.625 -20.161976 2015-11-19 23:59:56.750 -20.126276 2015-11-19 23:59:56.875 -20.082863 2015-11-19 23:59:57.000 -20.030237 2015-11-19 23:59:57.125 -20.098312 2015-11-19 23:59:57.250 -20.146214 2015-11-19 23:59:57.375 -20.030476 2015-11-19 23:59:57.500 -20.018661 2015-11-19 23:59:57.625 -20.029900 2015-11-19 23:59:57.750 -19.970963 2015-11-19 23:59:57.875 -19.994637 2015-11-19 23:59:58.000 -20.097612 2015-11-19 23:59:58.125 -19.952700 |
您只需执行
1 2 3 4 | df = pd.DataFrame(index=['a', 'b', 'c']) df.index.values # array(['a', 'b', 'c'], dtype=object) |
根据pandas 0.24.x发行说明:"添加了series.array和index.array以提取支持序列或索引的数组…我们没有删除或弃用series.values或dataframe.values,但我们强烈建议并使用
看起来此主要版本更新完全满足您的需要:)
试试