几天前开始使用python,在遇到这个问题之前一直过得比较好。我有一个带有一些数值数据的数组,这些数据被分成YYYYMM列。
举例来说:
| | 201004 | 201005 | 201006 | 201007 | 201008 | 201008 |
| --|--|--|--|--|--|--|
| 一| 10 | 11 | 14 | 22 | 10 | 19 |
| B| 14 | 19 | 20 | 22 | 26 | 11 |
上面的示例数据从201003到201008,但数据取决于用户想要拉取的年份和月份(例如,201006-201303可以是另一个拉取)。
有没有一种方法,我可以对列求和,而不需要特别写201004,201005,201006,作为2010 q2的总和?
此外,我可以把所有的总和到不同的季度/年度列中的结构?
对于季刊,我完全不知道我该做什么。
对于annual,我用列名做了一个列表,然后将这些名字四舍五入到年份(2010年,2011年,等等),然后我在stackoverflow上发现了一个代码,它可以使用年份列表创建一个新的变量。它有map和regenx。我不能提供完整的代码,因为我在决定在stackoverflow上发布这个问题之前已经删除了它。
抱歉,任何帮助都将不胜感激。
编辑:我有多行,而不仅仅是一行。
2条答案
按热度按时间jbose2ul1#
如果您使用
df.melt()
,您可以将这些列转换为行,这可以帮助您将年-月分成两部分。字符串
从这里开始,使用df ['variable'].str根据字符数拆分字符串。
型
对于季度,可以从月份值Map到季度,然后使用
df.map()
型
xxhby3vn2#
验证码
groupby
+axis=1
,列的周期数据字符串
输出:
型
我做了一个变量
freq
,所以你可以很容易地改变频率。如果你把freq
改为'Y'
,你可以得到每年的总和。示例代码
型