Pandas で assign() メソッドを使用する方法 (例付き)


assign()メソッドを使用して、pandas DataFrame に新しい列を追加できます。

このメソッドでは、次の基本構文を使用します。

 df. assign (new_column = values)

このメソッドはコンソールに新しい DataFrame を表示するだけで、実際には元の DataFrame を変更しないことに注意することが重要です。

元の DataFrame を変更するには、 assign()メソッドの結果を新しい変数に保存する必要があります。

次の例は、次の pandas DataFrame でさまざまな方法でassign()メソッドを使用する方法を示しています。

 import pandas as pd

#define DataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

   points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

例 1: 新しい変数を DataFrame に割り当てる

次のコードは、 assign()メソッドを使用して、 points列の値を 2 倍した値に等しいpoint2 という新しい変数を DataFrame に追加する方法を示しています。

 #add new variable called points2
df. assign (points2 = df.points * 2 )

    points assists rebounds points2
0 25 5 11 50
1 12 7 8 24
2 15 7 10 30
3 14 9 6 28
4 19 12 6 38
5 23 9 5 46
6 25 9 9 50
7 29 4 12 58

このassign()メソッドは元の DataFrame を変更しないことに注意してください。

元の DataFrame を印刷すると、変更されていないことがわかります。

 #print original DataFrame
print (df)

   points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

assign()メソッドの結果を保存するには、結果を新しい DataFrame に保存します。

 #add new variable called points2 and save results in new DataFrame
df. assign (points2 = df.points * 2 )

#view new DataFrame
print (df_new)

   points assists rebounds points2
0 25 5 11 50
1 12 7 8 24
2 15 7 10 30
3 14 9 6 28
4 19 12 6 38
5 23 9 5 46
6 25 9 9 50
7 29 4 12 58

df_newという新しいデータフレームには、作成したPoints2列が含まれています。

例 2: 複数の新しい変数を DataFrame に割り当てる

次のコードは、 assign()メソッドを使用して 3 つの新しい変数を DataFrame に追加する方法を示しています。

 #add three new variables to DataFrame and store results in new DataFrame
df_new = df. assign (points2 = df. points * 2 ,
                   assists_rebs = df. assists + df. rebounds ,
                   conference = ' Western ')

#view new DataFrame
print (df_new)

   points assists rebounds points2 assists_rebs conference
0 25 5 11 50 16 Western
1 12 7 8 24 15 Western
2 15 7 10 30 17 Western
3 14 9 6 28 15 Western
4 19 12 6 38 18 Western
5 23 9 5 46 14 Western
6 25 9 9 50 18 Western
7 29 4 12 58 16 Western

3 つの新しい列が DataFrame に追加されたことに注意してください。

: pandas assign()メソッドの完全なドキュメントはここで見つけることができます。

追加リソース

次のチュートリアルでは、パンダで他の一般的な関数を使用する方法を説明します。

Pandasでdescribe()関数を使用する方法
Pandas で idxmax() 関数を使用する方法
Pandas で選択した列に関数を適用する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です