025 판다스 모듈 이해하기
판다스(pandas)란? 1. 데이터 분석을 위한 파이썬 모듈
2. 판다스는 dataframe이라는 기본 자료구조를 사용
(dataframe은 오라클의 table과 유사함)
예제. emp2.csv를 판다스의 dataframe으로 생성하시오.
import pandas as pd # pd는 별칭
emp = pd.read_csv("c:\\data\\emp2.csv")
emp
엑셀이나 csv파일의 데이터를 빠른 속도로 검색할 수 있게 만든 판다스 모듈을 import하고 read_csv함수로 emp2.csv를 읽어옴. 그리고 emp에 담음.
emp는 판다스 dataframe이 됨. 일종의 오라클 table 개념으로 보면 됨.
예제. 사원 데이터프레임에서 이름과 월급을 출력하시오.
-- SQL
select ename, sal
from emp;
# pandas 문법 : emp[보고싶은 컬럼명 리스트][검색조건]
emp[['ename','sal']]
# 주피터 노트북은 한 번 import하면 dataframe이 살아있기 때문에 그냥 emp[['ename','sal']]만 쳐도 됨.
# spyder에서 실행할 때
import pandas as pd
emp = pd.read_csv("c:\\data\\emp2.csv")
print(emp)
#%% # '#%%'은 위의 코드와 아래 코드를 구분시켜서 실행시킴.emp dataframe은 살아있음.
print(emp[['ename','sal']]
예제. 월급이 3000이상인 사원들의 이름과 월급을 출력하시오.
emp[['ename','sal']][emp['sal'] >= 3000]
# int()로 감쌀 필요 없음. 알아서 검색 됨.
문제97. 직업이 SALESMAN인 사원들의 이름과 직업을 출력하시오.
emp[['ename','job']][emp['job'] == 'SALESMAN']
# 파이썬 판다스는 컬럼명 대소문자를 구분함.
문제98. 부서번호가 20번인 사원들의 이름과 월급과 부서번호를 출력하시오.
emp[['ename','sal','deptno']][emp['deptno'] == 20]
문제99. 직업이 SALESMAN이고 월급이 1000 이상인 사원들의 이름, 월급, 직업을 출력하시오.
emp[['ename','sal','job']] [(emp['job']=='SALESMAN') & (emp['sal']>=1000)]
# & 작성 시, 괄호 써 줘야함
판다스에서는 and가 &, or는 | 임.
문제100. mtcars.csv에서 qsec가 2.0이상인 레코드만 출력하시오(행전체 출력)
import pandas as pd
mtcars = pd.read_csv("c:\\data\\mtcars.csv")
mtcars [mtcars['qsec'] >= 2.0]
# 행 전체 출력시 앞에 [보고싶은 리스트] 없애고 [검색조건]만 주면 됨.
반응형
'Study > class note' 카테고리의 다른 글
python / 시퀀스(인덱싱, 슬라이싱, 연결, 반복, 크기) (0) | 2021.12.13 |
---|---|
python / 로봇 커피 머신 스크립트 (0) | 2021.12.13 |
python / 자료형(정수형, 실수형, 복소수형), 연산자(대입,사칙,축약,논리,관계), True/False (0) | 2021.12.10 |
python / 시퀀스 자료형 이해 (0) | 2021.12.10 |
sql / log함수 (0) | 2021.12.10 |