L'objectif est d'extraire df sous la catégorie mois-année en omettant les autres. Le code ci-dessous montre comment atteindre cet objectif

df = DataFrame ( [['PP1', 'LN', 'T1', 'C11', 'C21', 'C31', 'C32']] )
df.columns =['dummy1','dummy2', 'Jan-20', 'Feb-20', 'Jan 2021', 'Feb 2080','Dec 1993']
extract_header_name=list(df.columns.values)
lookup_list= ['Jan', 'Feb', 'Mar','Apr', 'May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']
month_year_list=[i for e in lookup_list for i in extract_header_name if e in i]

Production

['Jan-20', 'Jan 2021', 'Feb-20', 'Feb 2080', 'Dec 1993']

Cependant, je me demande si un autre module efficace ou construit par pandas permet d'obtenir un résultat similaire?

2
balandongiv 16 oct. 2020 à 08:48

2 réponses

Meilleure réponse

Sélectionnez les colonnes à l'aide de df.filter et extrayez leurs noms.

list(df.filter(regex='|'.join(lookup_list)).columns)

['Jan-20', 'Feb-20', 'Jan 2021', 'Feb 2080', 'Dec 1993']
1
wwnde 16 oct. 2020 à 05:58