Pandas DataFrame에서 열 이름(헤더)을 명시적으로 지정하려면 read_csv() 메서드의 names 매개변수를 사용하면 됩니다. 먼저 Microsoft Excel로 열어 본, 헤더가 없는 CSV 파일의 예는 다음과 같습니다.

이제 CSV 파일에서 데이터를 불러오면서 names 매개변수를 활용해 헤더 열을 추가해 보겠습니다.
pd.read_csv("C:\\Users\\amit_\\Desktop\\TeamData.csv", names=['Team', 'Rank_Points', 'Year'])
전체 예제 코드
다음은 전체 과정을 담은 완성된 코드입니다.
import pandas as pd
# CSV 파일에서 데이터를 불러와 Pandas DataFrame으로 생성
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\TeamData.csv")
print("헤더 없이 CSV 파일 읽기...\n", dataFrame)
# names 매개변수로 헤더(열 이름) 추가
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\TeamData.csv", names=['Team', 'Rank_Points', 'Year'])
# 헤더가 업데이트된 CSV 파일 다시 읽기
print("\n헤더 업데이트 후 CSV 파일 읽기...\n", dataFrame)
실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Reading the CSV file without headers...
Australia 2500 2021
0 Bangladesh 1000 2021
1 England 2000 2021
2 India 3000 2021
3 Srilanka 1500 2021
Reading the CSV file after updating headers...
Team Rank_Points Year
0 Australia 2500 2021
1 Bangladesh 1000 2021
2 England 2000 2021
3 India 3000 2021
4 Srilanka 1500 2021
핵심 포인트
- 헤더가 없는 CSV 파일을
read_csv()로 그냥 읽으면 첫 번째 데이터 행이 열 이름으로 잘못 인식됩니다. 위 실행 결과의 첫 번째 출력에서 'Australia' 행이 열 레이블로 표시된 것을 확인할 수 있습니다. - names 매개변수에 열 이름 리스트를 전달하면 각 열에 원하는 이름이 순서대로 지정되어 이 문제를 깔끔하게 해결할 수 있습니다.
- 만약 원본 파일에 이미 헤더 행이 포함되어 있다면
header=0옵션을 함께 지정해야 기존 헤더가 데이터로 처리되지 않고 새로운 열 이름으로 대체됩니다.