Cara mengalikan dua kolom di pandas: dengan contoh


Anda dapat menggunakan metode berikut untuk mengalikan dua kolom di pandas DataFrame:

Metode 1: Kalikan dua kolom

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

Metode 2: Kalikan dua kolom berdasarkan kondisi

 new_column = df. column1 * df. column2

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

Contoh berikut menunjukkan cara menggunakan masing-masing metode dalam praktik.

Contoh 1: Kalikan dua kolom

Misalkan kita memiliki panda DataFrame berikut:

 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

Kita dapat menggunakan sintaks berikut untuk mengalikan kolom harga dan jumlah dan membuat kolom baru bernama pendapatan :

 #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

Perhatikan bahwa nilai pada kolom pendapatan baru adalah hasil kali nilai pada kolom Harga dan Jumlah .

Contoh 2: Kalikan dua kolom berdasarkan kondisi

Misalkan kita memiliki panda DataFrame berikut:

 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

Kita bisa mengalikan kolom harga dan jumlah , lalu menggunakan fungsi di mana () untuk mengubah hasilnya berdasarkan nilai kolom tipe :

 #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

Perhatikan bahwa kolom Pendapatan mengambil nilai berikut:

  • Produk harga dan jumlah jika jenisnya sama dengan “Penjualan”
  • 0 sebaliknya

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:

Cara memilih kolom berdasarkan indeks di Pandas DataFrame
Cara mengganti nama indeks di Pandas DataFrame
Cara menghapus kolom berdasarkan indeks di Pandas

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *