Maison > développement back-end > Tutoriel Python > Comment extraire des colonnes avec des sous-chaînes correspondantes dans Pandas DataFrame de manière itérative et à l'aide d'expressions régulières ?

Comment extraire des colonnes avec des sous-chaînes correspondantes dans Pandas DataFrame de manière itérative et à l'aide d'expressions régulières ?

Susan Sarandon
Libérer: 2024-10-20 13:58:29
original
669 Les gens l'ont consulté

How to Extract Columns with Matching Substrings in pandas DataFrame Iteratively and Using Regular Expressions?

Identification des colonnes contenant des sous-chaînes spécifiques

Pour localiser les colonnes dont les noms contiennent une sous-chaîne spécifiée sans nécessiter une correspondance exacte, une approche itérative peut être utilisée . Cela implique d'examiner chaque nom de colonne et d'identifier ceux qui satisfont au critère de recherche.

Considérez un DataFrame avec des noms de colonnes tels que « Spike-2 », « Hey Spike » et « Spiked-in ». Pour extraire les noms de colonnes contenant la sous-chaîne 'spike', le code Python suivant peut être utilisé :

<code class="python">import pandas as pd

# Initialize data
data = {'spike-2': [1,2,3], 'hey spke': [4,5,6], 'spiked-in': [7,8,9], 'no': [10,11,12]}
df = pd.DataFrame(data)

# Iterate over column names and filter based on substring
spike_cols = [col for col in df.columns if 'spike' in col]

# Print resulting column names
print(spike_cols)</code>
Copier après la connexion

Dans ce code :

  1. df.columns renvoie une liste de colonnes noms.
  2. La compréhension de liste [col for col in df.columns if 'spike' in col] parcourt chaque nom de colonne en utilisant la variable col et construit une nouvelle liste contenant uniquement les noms qui incluent la sous-chaîne 'spike' .
  3. Le Spike_cols résultant contient les noms de colonnes souhaités, accessibles ultérieurement en utilisant df['col_name'] ou df[col_name].

Alternativement, pour obtenir un DataFrame avec uniquement les colonnes correspondantes :

<code class="python">df2 = df.filter(regex='spike')</code>
Copier après la connexion

Cela créera df2 contenant uniquement les colonnes dont les noms incluent « spike ».

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal