Есть ли в pandas регулярное выражение, в котором мы можем определить первый и последний символы и все, что находится между - PullRequest
1 голос
/ 23 марта 2020

Если у меня есть такие имена столбцов в df:

    Q24r639606c1: Good Quality      Q24r64500c1: Bad       Q25r64500c1: Amazing          Q24r64500c2: Worst         Q24r5200c1: Nice   
               A                            A                     B                              B                 

               D                            F                     C                              G                 K

Я хочу отфильтровать столбцы, которые начинаются с "Q24 и, имеют" c1 "перед двоеточием": "

I я пытаюсь это, но здесь я могу передать только одну строку

Selected_Columns = df.filter(regex = 'Q24r')

1 Ответ

3 голосов
/ 23 марта 2020

Фильтр с использованием начинается с Q24 (^Q24). Затем учитывайте что-либо (.*), пока не найдете точно 'c1:'

import pandas as pd
df = pd.DataFrame(columns=['Q24r639606c1: Good Quality', 'Q24r64500c1: Bad',
                           'Q25r64500c1: Amazing', 'Q24r64500c2: Worst', 'Q24r5200c1: Nice'])

df.filter(regex='^Q24.*c1:').columns
['Q24r639606c1: Good Quality', 'Q24r64500c1: Bad', 'Q24r5200c1: Nice'],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...