如何选择标题名称以&#34开头的所有列;持续时间"或"形状"? (而不是定义一长列列名)。我需要选择这些列并将空白字段替换为0。
column_names = ['durations.blockMinutes_x',
'durations.scheduledBlockMinutes_y']
data[column_names] = data[column_names].fillna(0)
答案 0 :(得分:0)
您可以使用数据框str
的{{1}}方法:
startwith
或者您可以使用df = data[data.columns[data.columns.str.startwith('durations') | data.columns.str.startwith('so')]]
df.fillna(0)
方法:
contains
答案 1 :(得分:0)
使用my_dataframe.columns.values.tolist()
获取列名称(基于Get list from pandas DataFrame column headers):
column_names = [x for x in data.columns.values.tolist() if x.startswith("durations") or x.startswith("shape")]
答案 2 :(得分:0)
我会使用select
方法:
df.select(lambda c: c.startwith('durations') or c.startswith('shape'), axis=1)
答案 3 :(得分:0)