Pandas에서 한 DataFrame의 열을 다른 DataFrame으로 가져와 추가하려면 insert() 메서드를 사용하면 됩니다. 이 메서드는 단순히 열을 끝에 붙이는 것이 아니라, 원하는 위치(인덱스)에 정확히 삽입할 수 있다는 점에서 매우 유용합니다.
먼저 첫 번째 DataFrame을 생성해 보겠습니다.
dataFrame1 = pd.DataFrame({"Car": ["Audi", "Lamborghini", "BMW", "Lexus"],
"Place": ["US", "UK", "India", "Australia"],
"Units": [200, 500, 800, 1000]})다음으로 두 번째 DataFrame을 생성합니다.
dataFrame2 = pd.DataFrame({"Model": [2018, 2019, 2020, 2021], "CC": [3000, 2800, 3500, 3300]})다른 DataFrame에서 열 가져오기
첫 번째 DataFrame(dataFrame1)의 Car 열을 두 번째 DataFrame(dataFrame2)에 추가해 보겠습니다. 먼저 해당 열을 변수로 가져옵니다.
# 두 번째 데이터프레임에 추가할 Car 열 가져오기 fetched_col = dataFrame1["Car"]
insert() 메서드의 주요 매개변수
- loc: 열이 삽입될 위치의 인덱스 (예: 1이면 두 번째 열 자리)
- column: 새로 추가될 열의 이름
- value: 삽입할 값 (Series, 리스트, 배열 등)
전체 예제 코드
아래는 위 과정을 모두 포함한 전체 코드입니다.
import pandas as pd
dataFrame1 = pd.DataFrame({"Car": ["Audi", "Lamborghini", "BMW", "Lexus"],
"Place": ["US", "UK", "India", "Australia"],
"Units": [200, 500, 800, 1000]})
print("Dataframe 1...")
print(dataFrame1)
dataFrame2 = pd.DataFrame({"Model": [2018, 2019, 2020, 2021], "CC": [3000, 2800, 3500, 3300]})
print("Dataframe 2...")
print(dataFrame2)
# 두 번째 데이터프레임에 추가할 Car 열 가져오기
fetched_col = dataFrame1["Car"]
dataFrame2.insert(1, "LuxuryCar", fetched_col)
print("Dataframe 2 (Updated):")
print(dataFrame2)실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 확인할 수 있습니다.
Dataframe 1...
Car Place Units
0 Audi US 200
1 Lamborghini UK 500
2 BMW India 800
3 Lexus Australia 1000
Dataframe 2...
CC Model
0 3000 2018
1 2800 2019
2 3500 2020
3 3300 2021
Dataframe 2 (Updated):
CC LuxuryCar Model
0 3000 Audi 2018
1 2800 Lamborghini 2019
2 3500 BMW 2020
3 3300 Lexus 2021출력 결과를 보면 LuxuryCar라는 이름의 새 열이 인덱스 1 위치, 즉 CC 열과 Model 열 사이에 성공적으로 삽입된 것을 확인할 수 있습니다. 이처럼 insert() 메서드를 활용하면 다른 DataFrame의 열을 원하는 위치에 자유롭게 추가할 수 있습니다.