Python 基于一个帧的行值和另一个帧的列值合并两个数据帧

Python 基于一个帧的行值和另一个帧的列值合并两个数据帧,python,pandas,dataframe,pandas-groupby,pandas-datareader,Python,Pandas,Dataframe,Pandas Groupby,Pandas Datareader,我有一个数据框架,第一列是公司列表,其余列是行业名称,如工业、信息技术、体育、新等 第一列由公司名称组成,其余列用零和1填充,根据它所属的部门,如下所示 category_list News Research Health Manufacturing NDTV 1 0 0 0 ESPN 0 1 0 0 Reliance

我有一个数据框架,第一列是公司列表,其余列是行业名称,如工业、信息技术、体育、新等

第一列由公司名称组成,其余列用零和1填充,根据它所属的部门,如下所示

category_list   News    Research    Health  Manufacturing   
NDTV          1        0          0          0  
ESPN          0        1          0          0  
Reliance      0        0          0          1
Ambuja        0        0          0          1
ABV           1        0          0          0
我需要创建一个包含两列的映射,第一列包含公司名称和its部门名称

预期产量

category_list    sector
NDTV              News
ESPN              Research
Reliance          Manufacturing
Ambuja            Manufacturing
ABV               News
目前,我只知道按一列接一列地对公司进行分组和获取

test = d1.loc[d1['Health'] == 0]

df.set_index('category_list').idxmax()
如果每行只有一个
1
,否则请提供一个示例输出
df.set_index('category_list').idxmax(1)
@anky:)签出
stack
@anky 91这样我想我只会得到为特定列获取的最顶端的一个。@AravindS
df.set_index('category_list')。idxmax(1)
与您的预期输出匹配