Pandas DataFrame DataFrame.assign() 함수

  1. pandas.DataFrame.assign()의 구문:
  2. 예제 코드: 단일 열을 할당하는DataFrame.assign()메서드
  3. 예제 코드: 여러 열을 할당하는DataFrame.assign()메서드

Python Pandas DataFrame.assign() 함수는DataFrame에 새 열을 할당합니다.

pandas.DataFrame.assign()의 구문:

DataFrame.assign(**kwargs)

매개 변수

**kwargs assign()함수에 대한 키워드 인수. DataFrame에 할당 할 열 이름은 키워드 인수로 전달됩니다.

반환

기존 열과 함께 새 열이 할당 된DataFrame 개체를 반환합니다.

예제 코드: 단일 열을 할당하는DataFrame.assign()메서드

import pandas as pd

df = pd.DataFrame({'Cost Price': 
                   [100, 200], 
                   'Selling Price':
                   [200, 400]})

new_df=df.assign(Profit=df["Selling Price"]-
                        df["Cost Price"])
print(new_df)

호출자DataFrame

   Cost Price  Selling Price
0         100            200
1         200            400

산출:

   Cost Price  Selling Price  Profit
0         100            200     100
1         200            400     200

Selling PriceCost Price 열의 차이에 해당하는Dataframe에 새 열Profit을 할당합니다.

호출 가능한 객체에lambda 함수를 사용하여df에 새 열을 할당 할 수도 있습니다.

import pandas as pd

df = pd.DataFrame({'Cost_Price': 
                   [100, 200], 
                   'Selling_Price': 
                   [200, 400]})

new_df=df.assign(Profit=lambda x: 
                 x.Selling_Price-
                 x.Cost_Price)

print(new_df)

호출자DataFrame

   Cost Price  Selling Price
0         100            200
1         200            400

산출:

   Cost_Price  Selling_Price  Profit
0         100            200     100
1         200            400     200

예제 코드: 여러 열을 할당하는DataFrame.assign()메서드

import pandas as pd

df = pd.DataFrame({'Cost_Price': 
                   [100, 200], 
                   'Selling_Price': 
                   [200, 400]})

new_df=df.assign(Cost_Price_Euro =  
                 df['Cost_Price']*1.11,  
                  Selling_Price_Euro = 
                 df['Selling_Price']*1.11)

print(new_df)

호출자DataFrame

   Cost Price  Selling Price
0         100            200
1         200            400

산출:

   Cost_Price  Selling_Price  Cost_Price_Euro  Selling_Price_Euro
0         100            200            111.0               222.0
1         200            400            222.0               444.0

기존 열Cost_PriceSelling_Price에서 파생 된df에 각각 두 개의 새 열Cost_Price_EuroSelling_Price_Euro를 할당합니다.

호출 가능한 객체에 대해lambda 함수를 사용하여df에 여러 열을 할당 할 수도 있습니다.

import pandas as pd

df = pd.DataFrame({'Cost_Price': 
                   [100, 200], 
                   'Selling_Price': 
                   [200, 400]})

new_df=df.assign(Cost_Price_Euro = 
                 lambda x: x.Cost_Price*1.11,  
                 Selling_Price_Euro =
                 lambda x: x.Selling_Price*1.11)

print(new_df)

호출자DataFrame

   Cost Price  Selling Price
0         100            200
1         200            400

산출:

   Cost_Price  Selling_Price  Cost_Price_Euro  Selling_Price_Euro
0         100            200            111.0               222.0
1         200            400            222.0               444.0