首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将pandas._period.Period类型列名转换为小写

将pandas._period.Period类型列名转换为小写
EN

Stack Overflow用户
提问于 2017-02-20 02:03:26
回答 1查看 1.4K关注 0票数 2

我有一个带有列名的数据集‘City

代码语言:javascript
运行
复制
2000-01,2000-02,2000-03,2000-04,2000-05,......,2010-08,2010-09,2010-10,2010-11,2010-12.

我使用以下代码获取列名,如下所示

代码语言:javascript
运行
复制
2000Q1 , 2000Q2, 2000Q3, ......, 2010Q4

在pandas._period.Period数据类型中。

代码语言:javascript
运行
复制
def Problem():
    hd = pd.read_csv('City.csv')
    hd = hd.groupby(pd.PeriodIndex(hd.columns, freq='Q'), axis =1).mean()
    return hd
Problem()

我希望这些列是

代码语言:javascript
运行
复制
2000q1, 2000q2, 2000q3, ....... ,2010q4

我想在我的输出列名中使用小写的'q‘。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-20 02:04:26

您需要与PeriodIndex一起工作的strftime

代码语言:javascript
运行
复制
hd.columns = hd.columns.strftime('%Yq%q')

示例:

代码语言:javascript
运行
复制
hd = pd.DataFrame({'2000-01':[1,3], '2000-05':[5,6]})
hd = hd.groupby(pd.PeriodIndex(hd.columns, freq='Q'), axis =1).mean()
print (hd)
   2000Q1  2000Q2
0       1       5
1       3       6

hd.columns = hd.columns.strftime('%Yq%q')
print (hd)
   2000q1  2000q2
0       1       5
1       3       6
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42330848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档