한동안 인턴생활과 자격증 시험을 병행해서 공부하다 보니 스파르타 코딩 클럽 수업을 제대로 듣지 못했다.
이미 완주를 한 상태이지만 3주 차부터 개발일지를 적지 않아서 다시 제대로 들어보며 적으려고 한다.
현재 자격증 시험은 다 끝났고, 인턴생활도 11월 30일이면 끝이 나서 지금부터 남는 시간에 개발일지를 쓸 것이다
스파르타 코딩 클럽에서 배운 데이터 분석 3주 차는 크게 4가지로 원하는 데이터 찾기, 정렬과 로직과 수치 정보의 결합, 상관관계 분석, 시각화 기초 수업을 했다.
정리
1. 원하는 데이터 찾기
이 부분은 가끔 헷갈려서 오류가 날 때가 있었는데 수업에서 다시 한번 짚어줘서 좋았다.
특정 열을 선택할 때
df['col1']
df['co11','col2'] # 오류
df[['co11','col2']]
여러 개의 열을 선택할 때는 꼭 괄호를 두 개 써줘야 한다.
col=['col1','col2','col3']
df[col]
이렇게 변수로 지정한 모습을 보면 두 개의 괄호가 필요함을 쉽게 이해할 수 있다.
- 결측치 제거
df.isnull().sum()
결측치가 칼럼 별로 몇 개가 있는지 알 수 있다.
df.dropna()
dropna를 사용하여 결측치를 제거해준다.
2. 정렬과 로직과 수치 정보의 결합
not과 and, or을 표현하는 코드
not
df[~(df['col1'] == 'abc')] # 꼭 () 소괄호로 감싸주기!
not(제외)은 ~을 이용하여 표현해준다. 이때 꼭 ( )로 감싸줘야 한다.
and
df[(df['col1'] == 'abc') & (df['col2'] > 300)]
and(그리고)는 &을 이용하여 표현해준다.
or
df[(df['col1'] == 'abc') | (df['col2'] > 200)]
or(또는)은 |을 이용하여 표현해준다.
정렬
df.sort_values('col1') #오름차순
df.sort_values('col1', ascending=False) #내림차순
sort_values를 해주어 정렬을 해주는데 이때 기본 값은 오름차순이다.
내림차순으로 변경하고 싶다면 ascending을 False로 변경해주면 된다.
3. 시각화 기초
산점도
import matplotlib.pyplot as plt
import seaborn as sns
sns.pairplot(df,hue='col1')
plt.show()
그래프에 점으로 나타내준다.
hue는 종류별로 구분을 해준다.
파이 그래프(원)
pie_labels = df['col1'].value_counts().index.tolist() #인덱스를 리스트 형태로 뽑아내자 tolist
pie_values = df['col1'].value_counts().values.tolist()
plt.pie(pie_values, labels = pie_labels,autopct='%.2f%%') #소수점 둘째자리까지
pie그래프를 그릴 때 리스트로 변환해주어 나타내 줬다.
리스트로 변환시키기 위해 tolist()를 사용해줬다.
bar chart(바 차트)
sns.barplot(data=df[df['col1'] == 'abc'], x='col2', y='col3',ci=None).set(xlabel='Col2',ylabel='col3')
df['col1'].plot(kind='hist') #히스토그램
특정 조건을 만들어 바 차트로 원하는 대로 만들어 줄 수도 있고, 히스토그램으로도 표현할 수 있다.
일별 그래프와 누적 그래프
df_count = df.groupby(['date'])['id'].count()
plt.rcParams['figure.figsize'] = (15,5)
df_count.plot() # 일별 그래프
df_count.cumsum().plot() #cumsum()은 누적


groupby를 이용하여 날짜별로 count(수)를 셌다.
누적을 나타내기 위해서는 cumsum()을 이용한다.
지금까지 사용해오고 많이 봐왔던 부분이라 다시 한번 더 정리한다는 느낌으로 수업을 들었다.
정리를 하니 더 기억에 남고 자세히 배울 수 있었다.
특히 몰랐던 부분인 누적 그래프를 그릴 때 cumsum()을 사용해야 한다는 것과 not은 ~을 사용한다는 것을 알았다.
나중에 활용해봐야겠다.
리스트를 사용한 파이 그래프도 다시 보며 이해할 수 있었고, 3주 차도 의미 있는 수업이었다!
'데이터분석 개발일지(스파르타코딩)' 카테고리의 다른 글
| 데이터분석_개발일지5 (0) | 2023.02.01 |
|---|---|
| 데이터분석_개발일지4 (0) | 2022.11.25 |
| 스파르타코딩 데이터분석 개발일지2 (0) | 2022.08.22 |
| 데이터분석 개발일지1.2 (0) | 2022.08.09 |
| 데이터분석 개발일지1 (0) | 2022.08.09 |