2016-03-11 3 views
0

В pandas DataFrame Мне нужно отфильтровать те столбцы, которые содержат слово «fixed». Затем я хочу создать еще один DataFrame только с этими столбцами. Как я могу это сделать?Отфильтровать столбцы, содержащие определенное слово

cols = dataset.columns 

split = lambda x: [c for c in x.split('_') if c.startswith('fixed')] 
+1

Не используйте 'раскол = лямбда ...'. 'lambda' функции неназванные, поэтому не давайте им имени. Это против PEP 8. – zondo

ответ

2

Просто используйте .ix атрибут:

fixed = [c for c in dataset.columns if c.startswith("fixed")] 
fixed_dataset = dataset.ix[:, fixed] 

Аналогично в противоположном случае:

non_fixed = [c for c in dataset.columns if not c.startswith("fixed")] 
dataset.ix[:, non_fixed] 
Смежные вопросы