我有一个由以下定义的DataFrame:
df = pd.DataFrame({
'id':[1,2,3],
'activity':['A1', 'A2', 'A2'],
'prep_hours':[None,None,1],
'delivery_hours':[10,10,15]})
我想创建一个名为
total_hours
的列,它是匹配模式*_hours
的所有列之和。目前,我只需将所需列添加到新列中即可。
df.fillna(0, inplace=True)
df['total_hours'] = df['prep_hours'] + df['delivery_hours']
但是它不易扩展。举例来说,我只有两列名为*_hours
的数据,但在真实的DataFrame中,它包含超过30个需要添加的列。
有没有更聪明的方法来处理呢?