[ 수업 목표 ]
- 데이터 분석을 위한 Python 기초 문법에 익숙해질 수 있다
- Pandas의 사용법을 익힌다
- 데이터 분석 시각화에 필요한 matplolib의 사용법을 익힌다
[ 참고 ] 구글링 하는 꿀팁! 1. 구글을 사용하자 : 구글링이 괜히 구글링이 아니겠죠! 다른 사이트보다 많은 정보를 찾을 수 있습니다. 2. 특수기호를 잘 활용하자 : " 검색어 + 특정기술 " 형태로 검색해보세요 뒷부분의 특정기술 부분이 반드시 포함되어야 하므로 원하는 내용을 찾기가 쉽습니다! ( 반대로 - 기호를 넣으면 해당 내용은 제거됩니다) 3. 영어로 검색하자 : 코딩 관련 영어 커뮤니티가 더 많다보니 영어로 검색하는 것이 더 확실한 데이터를 얻을 수 있습니다. |
구글 Colab 구글 Colab이란? 온라인에서 파이썬 데이터 분석을 학습할 수 있는 환경 ( 1 ) 내 컴퓨터에 파이썬을 설치 할 필요 없고 ( 2 ) 인터넷만 되면 어디서든 접근 가능하고 ( 3 ) 내 컴퓨터보다 빠르답니다! [ 알아두기 ] Google Colab은 무료로 제공되는 만큼, 아래 ' 사용 제한 '이 있어요 = > 연속 연결 시간 최대 90분, 하루 이용 제한 12시간 |
[ python 기본 문법 ]
- pandas에서 엑셀 파일 여는 방법
titanic = pd.read_table('파일경로', 'sep = ',') |
1 ) 변수
- 변수란? 데이터를 담는 컨테이너
특정한 이름이 있는 상자에 원하넨 데이터를 담아 두었다가,
그 이름만 부르면 데이터를 호출 할 수 있습니다
2 ) 기본 사칙 연산 가능
3 ) 리스트와 딕셔너리
- 리스트는 순서가 있는 데이터들의 모음집
[ 변수를 하나하나 지정 ] [ 리스트의 경우 ]
student_1 = "김철수"
student_2 = "김영희" student_list = ["김철수", "김영희", "오영상", ... , "주은비"]
student_3 = "오영상"
. . .
student_100 = "주은비"
(1) 리스트 사용법
- 리스트 선언하기
리스트는 "대괄호"를 사용하여 작성합니다.
리스트 = [데이터, 데이터, 데이터, ... ]
a_list = [1, 2, 3, 4, 5]
b_list = [1, 2, 'hey', 'world']
- 리스트 데이터 호출하기
b_list[1] => 2를 출력
b_list[2] = > hey를 출력
리스트 안의 데이터들의 번호, 즉 순서를 뜻합니다 - 학생들의 번호를 리스트에는 디폴트로 정하고 가는 것 - 순서를 불러주면 순서에 해당하는 데이터를 가져올 수 있음 * 리스트 순서는 1이 아니라, 0부터 시작한다는 점 잊지 마세요! |
- 딕셔너리는 "이름"과 "이름에 해당하는 값"이 쌍으로 이뤄진 데이터들의 모음집
[ 변수를 하나하나 지정 ] [ 딕셔너리의 경우 ]
김철수_height = 182
김철수_weight = 68 김철수 = {'height' : 183, 'weight' : 68, ...}
김철수_eyesight = 2.0
. . .
김철수_room = "room100"
( 2 ) 딕셔너리 사용법
- 딕셔너리 선언하기
딕셔너리는 "중괄호"를 사용하여 작성합니다.
딕셔너리 = {키 : 벨류, 키 : 벨류, 키 : 벨류, ...}
student_age = {'Jack' : 32, 'Ritika' : 31, 'Mark' : 22, 'Mathew' : 27}
- 딕셔너리 값 호출하기
student_age['Jack'] => 32를 출력
[ 주제 ]
파이썬으로 타이타닉 사망자의 비밀 파헤치기
1. 상관관계 분석을 위한 Pandas
(1) Pandas 라이브러리 사용 선언하기
import pandas as pd
(2) 데이터 가져오기
titanic = pd.read_table('파일경로', sep=',')
(3) 표 읽기 및 데이터 확인
titanic.head(n)
# 데이터의 처음 n 줄의 데이터를 출력합니다
# 아무 입력이 없을 경우 5줄을 기본으로 출력합니다
(4) 공백란 제거하기
#1. Null(공백) 데이터 파악하기
print(titanic.isnull().sum())
#2. 공백 데이터 제거하기
titanic = titanic.dropma()
2. 상관관계 분석
(1) 상관계수 구하기
corr = titanic.corr(method='pearson')
(2) 결과 확인하기
corr
(3) 상관계수 Survived 요소가 1(최대)이 아닌 수만 불러오기
-> 생존률과 생존률의 상관관계를 굳이 확인할 필요는 없으므로
corr = corr[corr.Survived !=1]
3. matplotlib을 이용하여 분석 결과 시각화하기
(1) matplotlib 사용 선언하기
import matplotlib.pyplot as plt
(2) 그래프 그리기
corr.plot()
-> Passengerld 부터 Survived 까지 모든 데이터의 상관계수 그래프
(3) 그래프로 사용할 부분만 남기기
- 그래프로 나타낼 열 지정하기
corr['Survived'].plot()
- 필요없는 행 삭제하기
corr = corr.drop(['PassengerID'], axis = 'rows')
corr['Sorvived'].plot()
(4) 원하는 그래프로 변경하기
corr['Survived'].plot.bar()
[ 전체 코드 ]
import pandas as pd import matplotlib.pyplot as plt titanic = pd.read_table('train.csv', sep = ',') # 1. Null(공백) 데이터 파악하기 print(titanic.isnull().sum() # 2. 공백 데이터 제거하기 titanic = titanic.dropna() # 상관계수 구하기 corr = titanic.corr(method='pearson') # survived 1인 요소 제외하기 corr = corr[corr.Survived !=1] # passengerId 열 삭제하기 corr = corr.drop(['PassengerId'], axis = 'rows') # 생존율 상관관계 바 그래프 생성하기 corr['survived'].plot.bar() # x축 레이블 45도 회전하기 plt.xticks(rotation=45) |
[ 2주차 숙제 ]
지난 주 진행하였던 파마 인디언 당뇨병 데이터 세트를 "Pandas"와 "matplotlib"을 이용하여 상관관계 분석을 진행해봅시다.
- 전체 코드
import pandas as pd diabetes = pd.read_table('/content/diabetes (1).csv',sep=',') diabetes.head() print(diabetes.isnull().sum()) corr = diabetes.corr(method='pearson') corr corr = corr[corr.Outcome !=1] corr import matplotlib.pyplot as plt corr['Outcome'].plot.bar() |
데이터 분석 결과, 당뇨병 발병에 가장 큰 영향을 미치는 요소는 " Glucose " 입니다 |
'내일배움캠프_QAQC 트랙 1기 > 강의 요약' 카테고리의 다른 글
[내일배움캠프] 데이터 분석 파이썬 종합반 3주차 (1) | 2024.12.24 |
---|---|
[내일배움캠프] 데이터 분석 파이썬 종합반 2주차 (1) | 2024.12.23 |
[내일배움캠프] 데이터 분석 파이썬 종합반 1주차 (3) | 2024.12.23 |
[내일배움캠프] 데이터 분석 종합반 3주차 (2) | 2024.12.19 |
[내일배움캠프] 데이터 분석 종합반 1주차 (2) | 2024.12.12 |