Skip to content

Pandas DataFrame에 새 열 추가하기: 방법 및 기술

Updated on

데이터프레임으로 작업하는 것은 데이터 분석 및 데이터 과학의 필수적인 부분입니다. Pandas는 데이터 조작 및 분석에 널리 사용되는 라이브러리이며, 데이터프레임을 작업하는 간편하고 유연한 방법을 제공합니다. 데이터프레임은 서로 다른 유형의 열을 가진 2차원 레이블이 지정된 데이터 구조입니다. 스프레드시트나 SQL 테이블과 같지만 더 강력하고 유연합니다. 이 문서에서는 기존 Pandas 데이터프레임에 새 열을 추가하는 방법을 학습하고, Pandas 데이터프레임에 새 열을 삽입하는 다양한 방법과 기술에 대해 논의할 것입니다.

Python에서 빠르게 데이터 시각화를 만들고 싶나요?

PyGWalker는 Jupyter Notebook 기반 환경에서 데이터 분석 및 시각화 워크플로우의 속도를 높이는 데 도움이되는 오픈소스 Python 프로젝트입니다.

PyGWalker (opens in a new tab)는 Pandas 데이터프레임(또는 Polars 데이터프레임)을 시각적 UI로 변환하여 변수를 드래그 앤 드롭하여 쉽게 그래프를 생성할 수 있습니다. 다음 코드를 사용하세요.

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

PyGWalker를 지금 바로 실행해 볼 수 있는 온라인 노트북입니다:

그리고, GitHub에서 ⭐️를 꼭 눌러주세요!

Kaggle Notebook에서 PyGWalker 실행하기 (opens in a new tab)Google Colab에서 PyGWalker 실행하기 (opens in a new tab)GitHub에서 PyGWalker ⭐️하기 (opens in a new tab)
Kaggle Notebook에서 PyGWalker 실행하기 (opens in a new tab)Google Colab에서 PyGWalker 실행하기 (opens in a new tab)GitHub에서 PyGWalker ⭐️하기 (opens in a new tab)

Pandas DataFrame이란?

Pandas 데이터프레임은 레이블이 지정된 두 개의 축이 있는 데이터 구조입니다. 스프레드시트나 SQL 테이블과 비슷하지만 더 많은 기능과 유연성을 가지고 있습니다. 데이터프레임은 CSV, Excel, SQL 데이터베이스 등 다양한 입력 데이터 형식에서 생성할 수 있습니다. Pandas 라이브러리에서 제공하는 다양한 방법과 함수를 사용하여 데이터프레임을 조작하고 분석할 수 있습니다.

Pandas DataFrame에 새 열 추가하는 방법

기존 Pandas 데이터프레임에 새 열을 추가하려면 다양한 방법과 기술을 사용할 수 있습니다. 가장 일반적인 방법은 간단한 할당을 사용하는 것입니다. 예를 들어보겠습니다.

두 개의 열 'Name'과 'Age'을 가진 데이터프레임이 있다고 가정합니다.

import pandas as pd
 
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [25, 30, 35, 40]
}
 
df = pd.DataFrame(data)
 

출력 결과:

       Name  Age
0     Alice   25
1       Bob   30
2   Charlie   35
3     David   40

이제 데이터프레임에 'Salary'라는 새로운 열을 추가하고자 합니다. 간단한 할당을 사용하여 다음과 같이 추가할 수 있습니다.

df['Salary'] = [50000, 60000, 70000, 80000]
print(df)

출력 결과:

       Name  Age  Salary
0     Alice   25   50000
1       Bob   30   60000
2   Charlie   35   70000
3     David   40   80000

새로운 열 'Salary'이 데이터프레임에 추가된 것을 확인할 수 있습니다.

판다스 데이터프레임에 새로운 열을 추가하는 방법

판다스 데이터프레임에 새로운 열을 추가하는 다양한 방법과 기술이 있습니다. 하나씩 알아보겠습니다.

방법 1: 간단한 할당

앞서 본 예시처럼, 데이터프레임에 간단한 할당을 사용하여 새로운 열을 추가할 수 있습니다. 리스트나 넘파이 배열을 새로운 열 이름에 할당하면 됩니다.

df['NewColumn'] = [1, 2, 3, 4]

방법 2: insert 메소드

데이터프레임에 새로운 열을 삽입하는 또 다른 방법은 insert 메소드를 사용하는 것입니다. insert 메소드는 세 개의 인자를 필요로 합니다: loc, column, value입니다. loc은 새로운 열을 삽입할 열의 인덱스입니다. column은 새로운 열의 이름이고, value는 새로운 열에 할당할 값을 나타냅니다.

df.insert(loc=1, column='NewColumn', value=[1, 2, 3, 4])

방법 3: concat 메소드

데이터프레임에 새로운 열을 추가하는 다른 방법은 두 데이터프레임을 축 1을 따라 연결하여 새로운 열을 추가하는 것입니다. 새로운 열은 기존 데이터프레임의 오른쪽에 추가됩니다. concat 메소드는 두 데이터프레임을 인자로 받아 축 1을 따라 연결합니다.

df2 = pd.DataFrame({'NewColumn': [1, 2, 3, 4]})
df = pd.concat([df, df2], axis=1)

메소드 4: 할당 메소드

assign 메소드를 사용하면 데이터프레임에서 새로운 열을 생성하고 해당 열의 값을 포함하는 새로운 데이터프레임을 반환할 수 있습니다. 이 메소드는 딕셔너리를 인수로 사용하여 각 키가 새로운 열 이름을, 각 값이 새로운 열의 값들을 나타내도록 합니다.

df = df.assign(NewColumn=[1, 2, 3, 4])

새로운 열을 추가할 때 기존의 열을 덮어쓸 수 있나요?

네, 새로운 열을 추가하면서 기존의 열을 덮어쓸 수 있습니다. 열에 값들을 할당할 경우, 해당 열의 기존 값들은 새로운 값들로 대체됩니다.

df['Age'] = [26, 31, 36, 41]

Pandas 데이터프레임에서 열을 지정된 위치에 추가하는 방법은 무엇인가요?

insert 메소드를 사용하면 Pandas 데이터프레임에서 지정된 위치에 열을 추가할 수 있습니다. loc 매개변수는 열을 삽입할 위치를 지정합니다. 열의 정수 인덱스를 사용하여 위치를 지정할 수 있습니다.

df.insert(2, 'NewColumn', [1, 2, 3, 4])

열 이름을 사용하여 위치를 지정할 수도 있습니다.

df.insert(df.columns.get_loc("Age"), 'NewColumn', [1, 2, 3, 4])

결론

이 글에서는 기존의 Pandas 데이터프레임에 새로운 열을 추가하는 방법을 배웠습니다. 간단한 할당, insert 메소드, concatenate 메소드 및 assign 메소드를 사용하여 Pandas 데이터프레임에 새로운 열을 삽입하는 다양한 방법과 기존의 열을 덮어쓰면서 새로운 열을 추가하는 방법, 그리고 Pandas 데이터프레임에서 지정된 위치에 열을 삽입하는 방법 등을 논의했습니다. 이러한 기술을 활용하여 데이터프레임을 효율적이고 효과적으로 조작할 수 있습니다.