티스토리 뷰
공공데이터 분석 해보기
df=pd.read_csv('서울시 코로나19 확진자 현황.csv',encoding='UTF-8')
df.head()
1. 데이터 탐색
데이터를 추출해서 보면, 환자번호, 국적, 환자정보 등 NaN으로 값이 돼 있는 것이 꽤 보인다.
만약 값이 하나도 없다면 이 값을 제거 해준다.
1) 아무것도 없는 값을 찾는다.
unique() 메소드를 사용하면 고유값이 몇 개 있는지 알 수 있고, nan 이외에 아무값도 없는 것을 확인할 수 있다.
#아무것도 없는 데이터 찾기
print(df['국적'].unique())
print(df['환자번호'].unique())
print(df['환자번호'].unique())
print(df['조치사항'].unique())
값이 있다면 그 값들이 출력된다.
2)필요없는 값 삭제
df=df.drop(columns=['환자번호','국적','환자정보','조치사항','이동경로','등록일','수정일','노출여부'])
컬럼명.drop을 사용하여 필요없는 컬럼을 삭제할 수 있다. 위의 값들은 unique()를 했을 때 아무값도 없던 값이다.
값이 잘 정리되었다.
3) 자료형 보기
자료형을 봤을 때 연번은 int형이고 나머지는 object형이다. 날짜는 datetime형으로 바꿔준다면 관리가 쉬워지기에 datetime형으로 바꿔보기로 하자.
자료형이 바뀐 것을 볼 수 있다.
지역을 볼 경우 29개가 있고, '성북구'와 ' 성북구'가 있다. 사실은 같은 구이지만 공백이 들어가서 이대로 분석을 돌린다면 다른 구처럼 조회될 것이다. 그렇기에 이 공백을 제거해보자.
이 때 strip()메소드를 쓴다.
공백이 제거되고 지역의 숫자가 줄어들었다.
지역은 카테고리형으로 변환해준다.
앞서 말했듯이 astype으로 자료형을 바꿀 수 있다.
바뀐 자료형 보기
4) 분석 전 정보 확인
여행력의 Null값이 많다. 코로나에 확진됐다고 해서 항상 여행을 간 것은 아니니까 어쩔 수 없다.
2. 데이터 분석
1) 일자별 보기
df_gu=pd.pivot_table(df,index='확진일',columns='지역',values='연번',aggfunc='count',margins=True)
df_gu
피벗테이블을 통해 지역과 날짜별로 코로나 확진자수를 확인해보자.
우선 어느 구에서 가장 많이 나온지 보기위해 맨 오른쪽의 All 컬럼을 본다.
#-1은 끝이다.
s_date=df_gu['All'][:-1]
s_date
어디가 많은지 알기 어렵다. 내림차순으로 정렬해보자.
sort_values(ascending=False)를 쓰면 내림차순으로 볼 수 있다.
시각화 하기
x=s_date.index
y=s_date.values
plt.title('서울시 일별 추가확진자(2021.09.28')
plt.xlabel('확진일')
plt.ylabel('확진자수')
plt.xticks(rotation=45)
plt.plot(x,y)
2) 지역별로 확인하기
s_gu=df_gu.loc['All'][:-1]
s_gu.sort_values(ascending=False)
행별 조회를 위해서 loc를 사용한다.
시각화하기
x=s_gu.index
y=s_gu.values
plt.figure(figsize=(10,7))
plt.title('서울시 구별 누적 확진자(2021.09.28)',size=20)
plt.barh(x,y)
plt.show()
3) 접촉력으로 분석하기
확진자의 종류에 따라 보려면 value_count()를 하면 자동으로 분류해서 숫자를 세어준다.
2021년 9월 데이터만 보기
'새싹 > 새싹데이터' 카테고리의 다른 글
14. 서울시 생필품 농축수산물 가격 정보 분석 (0) | 2022.05.11 |
---|---|
13. 서울시 공공자전거 이용 현황 (0) | 2022.05.10 |
10. 판다스 자료형 다루기 (0) | 2022.05.05 |
9. 데이터 가공하기 (1) | 2022.05.04 |
8 데이터를 추출하고 그래프 그리기 (0) | 2022.05.03 |
- Total
- Today
- Yesterday
- C/C++
- 윤성우
- C
- 뇌와행동의기초
- 열혈프로그래밍
- stl
- jlpt
- 일본어문법무작정따라하기
- 데이터분석
- c++
- 일문따
- 오블완
- 파이썬
- 인지부조화
- 심리학
- 회계
- 통계학
- 코딩테스트
- 백준
- 사회심리학
- 류근관
- 티스토리챌린지
- Python
- 인프런
- 정보처리기사
- 보세사
- 일본어
- EBS
- K-MOOC
- 여인권
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |