Python 基于名称模式对列进行迭代

Python 基于名称模式对列进行迭代,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个DataFrame,其中列的名称如下: one_fact | one_plan | one_wtf | two_fact | two_plan | two_wtf | apple_fact ... 所以name有一些模式:{name}+{fact/plan/..} 我想迭代所有列名并进行一些操作 类似于df[{name}}{ex']=df[{name}\u事实]>df[{name}\u计划] 我对所有列名进行了一种交叉连接(使用itertools.product)并检查:如果它们有公共

我有一个DataFrame,其中列的名称如下:

one_fact | one_plan | one_wtf | two_fact | two_plan | two_wtf | apple_fact ...
所以name有一些模式:
{name}+{fact/plan/..}
我想迭代所有列名并进行一些操作 类似于
df[{name}}{ex']=df[{name}\u事实]>df[{name}\u计划]

我对所有列名进行了一种交叉连接(使用
itertools.product
)并检查:如果它们有公共部分,则进行计算,但有很多列,因此计算需要一些时间。。实际上,我必须找到5列具有公共{name}模式的列。

我想有一个更好的解决方案,但我被卡住了

不太清楚您在这里想做什么。。。如果您编辑了您的问题,并包含了一个工作示例,说明您正在使用
df
的一小部分和当前操作做什么,这将非常有用。