티스토리 뷰

반응형

youtu.be/oY8cL9VhSJ0

사무자동화를 위한 데이타처리 강의입니다.

판다스(pandas)를 사용하여 엑셀파일을 불러오고

데이타 분석 및 정렬,생성하는 방법을 살펴봅니다.

 

판다스는 데이타 분석에 매우 활용도가 높은 라이브러리 입니다.

여기서는 판다스의 몇가지 기능에 대해서 살펴보고 라이브러리를 사용법을 익혀봅니다.

 

강의를 위해 설치된 라이브러리 입니다.

pip install pandas
pip install xlrd
pip install pywin32
pip install openpyxl

자세한 설명은 첨부된 동영상을 참고해주세요.

 

[강의에 사용된 엑셀파일] 

exam.xlsx
0.01MB

[강의 소스코드]

import pandas as pd

#pip install pandas
#pip install xlrd
#pip install pywin32
#pip install openpyxl

df = pd.read_excel('exam.xlsx', sheet_name='Sheet1')#엑셀파일 불러오기
# print(df.loc[:,'국어':'수학'].mean(axis=1))
print(df)

avr = df.mean(axis=1)
total = df.sum(axis=1)
max = df.max(axis=1)
min = df.min(axis=1)

df['최대'] =  max
df['최소'] =  min
df['총점'] = total
df['평균'] = avr

print(df)

df = df.sort_values(by='평균', ascending=False)#내림차순으로 정렬하기

print(df)
df = df.reset_index(drop=True)
print(df)

df2 = df.loc[df['평균']>80]#평균 80을 넘는것 가져오기
print(df2)

print()
for i in df2.columns: #컬럼 헤더정보 출력하기
    print(i, end='\t')
print()
# print(df2.columns[0])

for i in range(len(df2)): #데이타 출력하기
    for col in df2.columns:
        val = df2.loc[i,[col]].values[0]
        # print(type(val))
        if str(type(val)) == "<class 'numpy.float64'>":
            print(f"{val:0.2f}", end='\t')
        else:
            print(val,end='\t')
    print()

# print(df2.loc[0,['이름']].values[0])

df2.to_excel('result.xlsx',sheet_name='Sheet1')#엑셀파일 저장하기
반응형