小编Ale*_*237的帖子

Pandas - 根据其他列的值从特定列中选择行值

这有点令人费解,但我只会显示我的数据

我构建了以下数据框:

      Mid_XYZ  Mid_YYY  Mid_ZZZ Select1 Select2
867    1019.11   1027.64  1022.68   XYZ   YYY
873    1018.04   1027.58  1022.81   XYZ   ZZZ
Run Code Online (Sandbox Code Playgroud)

我想通过匹配列名的一部分来从基于Select1Select2字符串的列中选择值。在第一行,这将是

1019.11and 1027.64(column Mid_XYZand Mid_YYY) - 因为Select1有 stringXYZ并且Select2有 string YYY

其中,在第二行

1018.041022.81(列Mid_XYZMid_ZZZ

稍后,我计划将这些值的总和存储在新列中。DataFrame 看起来像这样

      Mid_XYZ  Mid_YYY  Mid_ZZZ Select1 Select2 Sum
867    1019.11   1027.64  1022.68   XYZ   YYY   2046.75
873    1018.04   1027.58  1022.81   XYZ   ZZZ   2040.85
Run Code Online (Sandbox Code Playgroud)

我可以将列名更改为精确匹配,但应该有一些正则表达式的解决方案?我知道df.filter(regex='XYZ'),但我怎么能按行做呢?

python dataframe pandas

4
推荐指数
1
解决办法
62
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1