Création de plusieurs nouvelles colonnes avec la fonction Pandas
Dans Pandas, il est possible d'appliquer une seule fonction à une colonne et de créer plusieurs nouvelles colonnes en fonction sur les valeurs de sortie.
Considérez le scénario suivant :
Vous disposez d'une fonction, extract_text_features, qui accepte une colonne de texte et renvoie 6 colonnes de sortie. Bien que la fonction elle-même fonctionne, attribuer la sortie à des colonnes spécifiques pose un défi.
Solution utilisant Zip :
Une approche efficace consiste à utiliser la fonction zip pour attribuer le valeurs de sortie sur plusieurs colonnes :
<code class="python">def powers(x): return x, x**2, x**3, x**4, x**5, x**6 df = pd.DataFrame([[i] for i in range(10)], columns=['num']) df['p1'], df['p2'], df['p3'], df['p4'], df['p5'], df['p6'] = zip(*df['num'].map(powers))</code>
Ici, la fonction map() applique des pouvoirs à chaque ligne de la colonne « num » et zip décompresse la sortie en colonnes individuelles.
Ceci La méthode génère efficacement plusieurs nouvelles colonnes en fonction des valeurs de sortie de la fonction. Il est également compatible avec les anciennes versions de Pandas, contrairement à certaines autres solutions qui s'appuient sur des fonctionnalités plus récentes comme df.assign().
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!