Python pandas:切片/索引混淆

时间:2014-04-01 13:36:00

标签: python pandas

我正在使用pandas / Python解决一些模型。但是在选择数据时我得到了一些非常奇怪的结果。我怀疑我不理解非常基本的东西。

DataFrame的索引是大熊猫季度时间序列。

问题出在我写的时候:

data.SI_PER

我得到了正确的系列:

2014Q1    116.832000
2014Q2    111.728001
2014Q3    106.976102
2014Q4    102.366623
2015Q1     97.849300
2015Q2     93.719593
2015Q3     89.766363
2015Q4     86.037304 

data.SI_PER['2014Q1'] 

给出116.83200000000002

但是当我写道:

data.loc['2014Q1','SI_PER']

我得到了

0.0

根据我的理解,输出应该是相同的,所以很明显我误解了一些东西。

修改

data.info()
<class 'pandas.core.frame.DataFrame'>
PeriodIndex: 144 entries, 1980Q1 to 2015Q4
Columns: 2948 entries, YEAR to FIHERHVERV_NON_CRDIV_SUP
dtypes: float64(2946), int64(2)>>> 

1 个答案:

答案 0 :(得分:2)

这是0.13.1,工作正常

In [16]: df = DataFrame(np.random.randn(10,2),index=period_range('2013',periods=10, freq='Q-JAN'),columns=['A','B'])

In [17]: df
Out[17]: 
               A         B
2013Q4 -0.905673  2.670701
2014Q1 -0.465485 -1.849802
2014Q2 -0.526230 -1.265586
2014Q3 -0.515863 -0.464663
2014Q4 -0.791347 -0.888892
2015Q1 -0.152992  0.004867
2015Q2 -0.349412 -2.581611
2015Q3  1.367116 -1.583860
2015Q4  0.837310  0.631884
2016Q1 -0.558182  0.408349

[10 rows x 2 columns]

In [18]: df.A['2014Q1']
Out[18]: -0.46548521567154932

In [19]: df.loc['2014Q1','A']
Out[19]: -0.46548521567154932