Pandas で 2 つの列を乗算する方法: 例付き
次のメソッドを使用して、pandas DataFrame の 2 つの列を乗算できます。
方法 1: 2 つの列を乗算する
df[' new_column '] = df. column1 * df. column2
方法 2: 条件に基づいて 2 つの列を乗算する
new_column = df. column1 * df. column2 #update values based on condition df[' new_column '] = new_column. where (df. column2 == ' value1 ', other= 0 )
次の例は、各メソッドを実際に使用する方法を示しています。
例 1: 2 つの列の乗算
次のパンダ データフレームがあるとします。
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
次の構文を使用して、 price 列とamount列を乗算し、収益という新しい列を作成できます。
#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
新しい収益列の値は、価格列と金額列の値の積であることに注意してください。
例 2: 条件に基づいて 2 つの列を乗算します。
次のパンダ データフレームがあるとします。
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
価格列と金額列を掛け合わせてから、where ()関数を使用して、 type列の値に基づいて結果を変更できます。
#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
「収入」列には次の値が含まれることに注意してください。
- タイプが「セール」の場合、価格と金額の積
- それ以外の場合は 0
追加リソース
次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。
Pandas DataFrame でインデックスによって列を選択する方法
Pandas DataFrame でインデックスの名前を変更する方法
Pandasでインデックスによって列を削除する方法