在熊猫的选择和索引编制方面,我有些慢.
我有一个“日期时间”序列,我试图从中选择某些元素及其日期时间索引,以便将它们附加到新序列中.
例:
import pandas as pd
x=pd.Series([11,12,13,14,15,16,17,18,19,20])
for i in range(len(x)):
print x.ix[i]
给出输出:
runfile('C:/Users/AClayton/WinPython-64bit-2.7.5.3/python-2.7.5.amd64/untitled6.py', wdir='C:/Users/AClayton/WinPython-64bit-2.7.5.3/python-2.7.5.amd64')
11
12
13
14
15
16
17
18
19
20
我想要输出
1 11
2 12
3 13
4 14
5 15
etc
无论如何也要获取索引? (我不仅要打印它,还想将一些内容附加到新的序列中.例如,将所有可被二整除的数字与索引一起添加到一个序列中).
抱歉,这很明显,已经很忙了.
解决方法:
要获得索引和值,可以遍历序列.请注意,默认索引从0开始,而不是从1:
>>> for i, v in x.iteritems():
... print i, v
...
0 11
1 12
2 13
3 14
4 15
5 16
6 17
7 18
8 19
9 20
确保您可以将自定义索引分配给系列:
>>> x.index = range(1, 6)*2
>>> for i, v in x.iteritems():
... print i, v
...
1 11
2 12
3 13
4 14
5 15
1 16
2 17
3 18
4 19
5 20
不要完全理解“我想在新系列中添加一些内容”的含义,但是可以使用index属性访问index:
>>> x.index
Int64Index([1, 2, 3, 4, 5, 1, 2, 3, 4, 5], dtype='int64')
或将其分成系列,制作一个数据框:
>>> x.reset_index()
index 0
0 1 11
1 2 12
2 3 13
3 4 14
4 5 15
5 1 16
6 2 17
7 3 18
8 4 19
9 5 20
[10 rows x 2 columns]