닫기

PROFESSIONAL AI DEVELOPER CHAGAUN

고객지원

도움말

HOME 고객지원 도움말
[데이터프레임-사용법2] 인텍스,컬럼 컨트롤 방법
2022.04.22

안녕하세요, 차가운 운영자입니다.


pandas로부터 csv 파일을 읽힌 dataframe의 행과 열을 컨트롤 하는 방법을 설명드립니다.

첨부파일 : example_using_dataframe_from_csv.py


import pandas as pd

# csv 파일로부터 데이터 읽기
dt = pd.read_csv('C:\\temp\\test_data.csv', sep=",", encoding="utf-8")
print(dt)
#    branch  22-th  23-th  24-th  25-th  26-th
# 0   busan  10000  53000  63000  49000  33000
# 1  daejun  82000  19000  51000  30000  85000
# 2  inchun  99000  42000  48000  83000  73000

print('컬럼헤더', dt.columns.tolist())
# 컬럼헤더 ['branch', '22-th', '23-th', '24-th', '25-th', '26-th']

print('인덱스라벨', dt.index.tolist())
# 인덱스라벨 [0, 1, 2]

# 행과 열을 바꾸기
dt1 = dt.transpose()
print(dt1)
#             0       1       2
# branch  busan  daejun  inchun
# 22-th   10000   82000   99000
# 23-th   53000   19000   42000
# 24-th   63000   51000   48000
# 25-th   49000   30000   83000
# 26-th   33000   85000   73000

print('컬럼헤더', dt1.columns.tolist())
# 컬럼헤더 [0, 1, 2]

print('인덱스라벨', dt1.index.tolist())
# 인덱스라벨 ['branch', '22-th', '23-th', '24-th', '25-th', '26-th']

# 첫번째 행을 컬럼헤더로 지정
dt2 = dt1.rename(columns=dt1.iloc[0])
print(dt2)
#         busan  daejun  inchun
# branch  busan  daejun  inchun
# 22-th   10000   82000   99000
# 23-th   53000   19000   42000
# 24-th   63000   51000   48000
# 25-th   49000   30000   83000
# 26-th   33000   85000   73000

print('컬럼헤더', dt2.columns.tolist())
# 컬럼헤더 ['busan', 'daejun', 'inchun']

print('인덱스라벨', dt2.index.tolist())
# 인덱스라벨 ['branch', '22-th', '23-th', '24-th', '25-th', '26-th']

# 첫번째 행 재거
dt3 = dt2.drop(dt2.index[0])
print(dt3)
#        busan daejun inchun
# 22-th  10000  82000  99000
# 23-th  53000  19000  42000
# 24-th  63000  51000  48000
# 25-th  49000  30000  83000
# 26-th  33000  85000  73000

print('컬럼헤더', dt3.columns.tolist())
# 컬럼헤더 ['busan', 'daejun', 'inchun']

print('인덱스라벨', dt3.index.tolist())
# 인덱스라벨 ['22-th', '23-th', '24-th', '25-th', '26-th']

# 인덱스 라벨을 첫번째 컬럼으로 전환(먼저 인덱스의 이름을 지정후 변환)
dt3.index.name = 'day'
dt4=dt3.reset_index()
print(dt4)
#      day  busan daejun inchun
# 0  22-th  10000  82000  99000
# 1  23-th  53000  19000  42000
# 2  24-th  63000  51000  48000
# 3  25-th  49000  30000  83000
# 4  26-th  33000  85000  73000

print('컬럼헤더', dt4.columns.tolist())
# 컬럼헤더 ['busan', 'daejun', 'inchun']

print('인덱스라벨', dt4.index.tolist())
# 인덱스라벨 ['22-th', '23-th', '24-th', '25-th', '26-th']

print("end of file")



이상입니다.


data/2022/09/24/example_using_dataframe_from_csv.zip

전체목록