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
601 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!

source:php
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