Pandas 데이터프레임에서 새로운 열을 만들 때는 기존에 생성되어 있는 열을 활용할 수 있습니다. 이번 글에서는 기존 열의 값을 가공하여 새로운 열을 추가하는 방법을 예제와 함께 살펴보겠습니다.
1. CSV 파일 읽어오기
먼저 pandas 라이브러리를 임포트한 뒤, read_csv() 함수를 사용해 CSV 파일을 읽어 데이터프레임을 생성합니다.
import pandas as pd
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv")2. 기존 열을 활용해 새 열 만들기
이미 존재하는 Reg_Price 열의 각 값에 100을 더한 결과를 담는 새로운 열 New_Reg_Price를 생성해 보겠습니다. 대괄호 표기법으로 새 열 이름을 지정하고 값을 할당하면 됩니다.
dataFrame['New_Reg_Price'] = (dataFrame['Reg_Price'] + 100)
이처럼 데이터프레임에 존재하지 않는 열 이름에 값을 할당하면, Pandas가 자동으로 해당 이름의 새로운 열을 맨 오른쪽에 추가해 줍니다.
전체 예제 코드
import pandas as pd
# CSV 파일 읽기
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv")
print("DataFrame...\n", dataFrame)
# 데이터프레임의 행과 열 개수 확인
print("\n데이터프레임의 행과 열 개수 = ", dataFrame.shape)
# 기존 열 Reg_Price에 100을 더해 새 열 New_Reg_Price 생성
dataFrame['New_Reg_Price'] = (dataFrame['Reg_Price'] + 100)
print("새 열이 추가된 업데이트된 DataFrame...\n", dataFrame)
print("\n[업데이트 후] 데이터프레임의 행과 열 개수 = ", dataFrame.shape)실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
DataFrame...
Car Date_of_Purchase Reg_Price
0 BMW 10/10/2020 1000
1 Lexus 10/12/2020 750
2 Audi 10/17/2020 750
3 Jaguar 10/16/2020 1500
4 Mustang 10/19/2020 1100
5 Lamborghini 10/22/2020 1000
데이터프레임의 행과 열 개수 = (6, 3)
새 열이 추가된 업데이트된 DataFrame...
Car Date_of_Purchase Reg_Price New_Reg_Price
0 BMW 10/10/2020 1000 1100
1 Lexus 10/12/2020 750 850
2 Audi 10/17/2020 750 850
3 Jaguar 10/16/2020 1500 1600
4 Mustang 10/19/2020 1100 1200
5 Lamborghini 10/22/2020 1000 1100
[업데이트 후] 데이터프레임의 행과 열 개수 = (6, 4)결과 분석
실행 결과를 보면 원래 데이터프레임은 6개의 행과 3개의 열(Car, Date_of_Purchase, Reg_Price)로 구성되어 있었습니다. 새로운 열 New_Reg_Price가 추가된 후에는 열 개수가 4개로 늘어난 것을 확인할 수 있습니다. 각 행의 New_Reg_Price 값은 기존 Reg_Price 값에 100이 더해진 결과입니다.
마무리
이렇게 Pandas에서는 기존 열을 기반으로 간단한 연산을 수행하여 손쉽게 새로운 파생 변수(열)를 만들 수 있습니다. 이 방법은 데이터 전처리 과정에서 특정 열의 값을 변환하거나, 계산된 지표를 추가할 때 매우 유용하게 활용됩니다.