匹配值并在python中获取其列标题

岛田

样品

我有1000 x 6数据框,其中A,B,C,D被人们以1-10的等级评分。

在SELECT列中,我有一个值,在所有情况下都与A / B / C / D中的任何一个值相同。

我想将“ SELECT”中的值更改为与其匹配的列的名称。例如,对于ID 1,SELECT = 1,D = 1,因此select的值应更改为D。

import pandas as pd
df = pd.read_excel("u.xlsx",sheet_name = "Sheet2",header = 0)

但是我迷路了。

耶斯列尔

Gwenersl解决方案比较不带列的所有列,ID)进行SELECT过滤,用来检查第一个值,如果不存在,则以下值匹配设置值differenceDataFrame.eq==Trueidxmaxno matchnumpy.where

cols = df.columns.difference(['ID','SELECT'])
mask = df[cols].eq(df['SELECT'], axis=0)

df['SELECT'] = np.where(mask.any(axis=1), mask.idxmax(axis=1), 'no match')
print (df)
   ID  A  B  C  D SELECT
0   1  4  9  7  1      D
1   2  5  7  2  8      C
2   3  7  4  8  6      C

详细说明

print (mask)
       A      B      C      D
0  False  False  False   True
1  False  False   True  False
2  False  False   True  False

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

了解插槽并在Alexa技能套件中获取其价值

如何遍历所有控件并在Android中获取其ID和值?

R.从DF A中获取其第一行与DF B元素匹配的列

检查密钥是否在字典中并在相同的“ if”中获取其值是否安全?

如何获取文件夹中的所有文件并在python中获取其MD5哈希?

在多列中查找匹配值并返回匹配的列标题

MySQL:如果联接中存在特定值,请获取其他列的最小值

检查值是否存在于矩阵中并获取其列

在Excel文件中匹配两列并获取其他列值-Python Pandas

如何只检查选中的复选框并在React Native中获取其值?

与列标题比较,并在python中检索其数据

C#模式匹配Task <T>并获取其值

在react Link中使用params并在另一个组件中获取其值?

Laravel-从数据透视表中获取其他列值

根据时间戳进行组聚合,并在Arrays MongoDB中获取其前面的字段值

如何将代码块存储在变量中,并在需要时调用它并获取其返回值?

如何在Extjs的渲染器函数中获取其他列的值?

如何在MySQL中获取其他语言的列值?

ping无限的时间,并在Python中获取其输出

单击父div时选择单选按钮,并在angularJS中获取其值

如何在匹配键时拆分python字典以获取其值

在CSV文件中,根据匹配模式获取其他值匹配模式

从列中获取所有匹配值

输入一个项目并在python中获取其正则表达式

如何从列中获取特定值并在 Python/Panda 中添加为新列?

Powershell:在对象中查找值并在另一列中获取其对应的值

如何将多列与给定的单列匹配并在新列中获取其名称?

为 Dataframe 中的列表解压 2 列以获取其对应的行值

偏移两个列表中的正数和负数并在 Python 中获取其余数