【发布时间】:2020-09-21 18:46:16
【问题描述】:
我有一个输入/输出数据,其中索引和标题具有代表不同类型行业的数字。我想创建新的列和行来表示属于某个行业组的列和行的总和。举个例子(请参考下面我手动制作的示例),我想创建新的行/列,其索引/标题为 US_industry_135/CAN_industry_135,它将对行业编号为 1 的行/列求和, 3或5。下面的示例是我手动创建的一个小集合,但我想知道是否有办法将条件放在总和中,以便我对索引/标题具有属于特定数字的行/列求和数字。我可以从标题/索引中提取数字并创建一个单独的行/列,但我想知道是否有一种方法可以直接从索引/标题中检查而不创建新列。提前感谢您的帮助!
import pandas as pd
data = {'US1':[3, 2, 1, 4,3,2,1,4,2,3,7,9],'US2':[8,4,9,2,1,3,4,2,5,6,18,11],'US3':[2,4,2,2,3,2,4,2,3,2,7,6],
'US4':[7,4,8,2,2,3,2,4,6,8,17,15],'US5':[2,4,3,2,2,4,1,3,2,4,7,11],
'CAN1':[3, 2, 1, 4,6,2,3,1,4,2,10,5],'CAN2':[8,4,9,2,5,7,3,5,7,1,22,13],'CAN3':[2,4,2,2,4,5,2,3,3,2,8,10],
'CAN4':[7,4,8,2,2,3,1,3,2,4,17,10],'CAN5':[2,4,3,2,6,7,5,4,0,9,11,20],
'US_IND_135':[7,10,6,8,8,8,6,9,7,9,21,26],'CAN_IND_135':[7,10,6,8,16,14,10,8,7,13,29,35]}
df = pd.DataFrame(data, index=['US1','US2','US3','US4','US5','CAN1','CAN2','CAN3','CAN4','CAN5','US_IND_135','CAN_IND_135'])
df
【问题讨论】:
标签: python pandas dataframe indexing header