gpt4 book ai didi

python - Pandas:在PeriodIndex之后查询

转载 作者:行者123 更新时间:2023-12-01 09:10:36 25 4
gpt4 key购买 nike

如何查询分组后的列然后按PeriodIndex。这是我第一个回答的问题的后续。

Link to the problem.

我无法查询以句点命名的列。例如:

housing['2008Q3']

这是返回的错误:

pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4433)()

pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4279)()

pandas/src/hashtable_class_helper.pxi in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:13742)()

pandas/src/hashtable_class_helper.pxi in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:13696)()

KeyError: '2008Q3'

我学到了什么:当我列出我的列时,它返回:

['State',
'RegionName',
Period('2008Q3', 'Q-DEC'),
Period('2008Q4', 'Q-DEC'),
Period('2009Q1', 'Q-DEC'),
Period('2009Q2', 'Q-DEC'),
Period('2009Q3', 'Q-DEC'),
Period('2009Q4', 'Q-DEC')]

我想取消句点并将它们设为字符串。我试过了

housing[Period('2009Q4', 'Q-DEC')]

但是给我带来了这个错误:

name 'Period' is not defined

哈哈

最佳答案

您可以首先将列转换为字符串,如下所示:

housing.columns=housing.columns.to_series().astype(str)

然后您可以通过其 str 名称访问列:

housing['2008Q3'].head()

0 499766.666667
1 469500.000000
2 232000.000000
3 116933.333333
4 193766.666667
Name: 2008Q3, dtype: float64

关于python - Pandas:在PeriodIndex之后查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51687764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com