Come moltiplicare due colonne in panda: con esempi


È possibile utilizzare i seguenti metodi per moltiplicare due colonne in un DataFrame panda:

Metodo 1: moltiplica due colonne

 df[' new_column '] = df. column1 * df. column2

Metodo 2: moltiplicare due colonne in base alla condizione

 new_column = df. column1 * df. column2

#update values based on condition
df[' new_column '] = new_column. where (df. column2 == ' value1 ', other= 0 )

Gli esempi seguenti mostrano come utilizzare ciascun metodo nella pratica.

Esempio 1: moltiplica due colonne

Supponiamo di avere i seguenti panda DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' price ': [22, 20, 25, 30, 4, 8, 12, 10],
                   ' amount ': [3, 1, 3, 3, 2, 4, 3, 5]})

#view DataFrame
print (df)

   price amount
0 22 3
1 20 1
2 25 3
3 30 3
4 4 2
5 8 4
6 12 3
7 10 5

Possiamo utilizzare la seguente sintassi per moltiplicare le colonne prezzo e importo e creare una nuova colonna denominata entrate :

 #multiply price and amount columns
df[' revenue '] = df. price * df. amount

#view updated DataFrame
print (df)

   price amount revenue
0 22 3 66
1 20 1 20
2 25 3 75
3 30 3 90
4 4 2 8
5 8 4 32
6 12 3 36
7 10 5 50

Tieni presente che i valori nella nuova colonna delle entrate sono il prodotto dei valori nelle colonne Prezzo e Importo .

Esempio 2: moltiplicare due colonne in base alla condizione

Supponiamo di avere i seguenti panda DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' price ': [22, 20, 25, 30, 4, 8, 12, 10],
                   ' amount ': [3, 1, 3, 3, 2, 4, 3, 5],
                   ' type ': ['Sale', 'Refund', 'Sale', 'Sale',
                            'Sale', 'Refund', 'Refund', 'Sale']})

#view DataFrame
print (df)

   price amount type
0 22 3 Dirty
1 20 1 Refund
2 25 3 Dirty
3 30 3 Dirty
4 4 2 Dirty
5 8 4 Refund
6 12 3 Return
7 10 5 Dirty

Possiamo moltiplicare insieme le colonne prezzo e importo , quindi utilizzare la funzione where () per modificare i risultati in base al valore della colonna tipo :

 #multiply price and amount columns
income = df. price * df. amount

#update values based on type
df[' revenue '] = revenue. where (df. type == ' Sale ', other= 0 )

#view updated DataFrame
print (df)

   price amount type revenue
0 22 3 Dirty 66
1 20 1 Refund 0
2 25 3 Dirty 75
3 30 3 Dirty 90
4 4 2 Dirty 8
5 8 4 Refund 0
6 12 3 Refund 0
7 10 5 Dirty 50

Tieni presente che la colonna Reddito assume i seguenti valori:

  • Il prodotto tra prezzo e importo se tipo è uguale a “Sale”
  • 0 altrimenti

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Come selezionare le colonne per indice in un Pandas DataFrame
Come rinominare l’indice in Pandas DataFrame
Come eliminare le colonne per indice in Pandas

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *