Day1_ 2023.02.15
첫날은 개인 프로젝트로 진행되었다.
이번 프로젝트는 데이터 분석을 진행하기 전 데이터를 전처리하는 과정을 반복한다는 시간인 것 같았다.
모기 예보제 정보를 가지고 진행했다.
https://data.seoul.go.kr/dataList/OA-13285/S/1/datasetView.do
열린데이터광장 메인
데이터분류,데이터검색,데이터활용
data.seoul.go.kr
모기 예보제 정보는 시간에 따라 모기 지수가 기록되 시계열 데이터이다.
오늘 알게된 데이터를 봤을때 생각해봐야 하는 것 (딱히 순서는 상관 없을듯)
1.중복된 값이 있나 확인한다.(예를들어 같은 날짜 기록이 여러개 일때)
- .drop_duplicates(inplace=True, keep='first') : 해당 row데이터가 모두 똑같을 때 제거, 첫번째 행 save
- 전날이나 다음날 데이터로 데이터 추이 확인 > 적절한 데이터만 남기고 삭제
2.null 값을 확인한다.
- dropna()로 삭제 후 다시 일일이 전후 데이터 추이를 확인해서 넣기(데이터 plot참고해서)
- Nan을 drop하지 않고 >> fillna(method = 'ffill' / 'bfill') 로 Nan 채우기
- Nan을 drop하지 않고 >> 데이터 추이가 선형적이라면 interpolate()을 사용할 수도 있음.
Day2_ 2023.02.16
오늘도 전처리 하는 시간이었다.
어제보다는 한결 나은 느낌이었지만, 팀원들이 해결한 과정을 들어보니 내가 데이터에 대한 탐색을 좀 꼼꼼히 하지 못하는 편이라는 것을 느꼈다. 주어진 문제를 해결하는데만 너무 매몰되었던것 같다.
내가 얻으려는 답을 찾기 위해서 선택한 데이터의 index나 column에 대해 한번더 생각해보는 과정을 의식적으로 상기해봐야할 것 같다.
오늘은 데이터의 개수를 확인하는 과정에서 nunique() , unique(), count(), value_counts() 의 차이에 대해 의문이 생겼다.
1. unique()와 value_counts()
- unique() : 해당 columns에 어떤 종류의 데이터가 있는지 출력
- value_counts() : 각종류별로 몇개의 데이터가 있는지 셈
Grade |
A |
A |
C |
B |
→ 'Grade' 라는 열에는 A, B, C 총 3개의종류가 있어서 출력값이 A, B, C가 된다.
→ value_counts()는 A, B, C 가 종류별로 몇개의 데이터가 있는지 세어준다.(중복되는 값도 그대로 센다.)
value_counts() | |
A | 2 |
B | 1 |
C | 1 |
2. nunique() : 고유한 요소의 수를 구한다.
Grade의 경우 A, B, C로 3종류가 있으므로 >> 3을 출력함 (중복되는 값은 세지 않는다.)
Day3_ 2023.02.17
오늘은 마지막날!! 조금 익숙해졌는지 많이 힘들진 않았다.
null값 처리하고, 기존에 있던 정보들로 새로운 열을 만드는 과정을 했다.
팀원들이랑 만나서 뭔가를 같이 하면서 느낀건데, 같은 문제를 가지고도 참 다양한 해결법들을 생각해내는 것 같다.
무엇보다 첫 팀플인데 , 팀원분들이 굉장히 적극적이었고, 좋은 분위기를 가진 분들이었다.
짬짬이 이야기도 많이 했고, MBTI 맞추기도 했다. 다음에 기회가 있을때 꼭 다시 만나고 싶은 분들이었다는 !!
오늘은 DataFrame에서 object → 숫자로 바꾸는 과정을 정리해보려 한다. 생각보다 많이 쓰일 것 같다
#object >> int
#위치로 slice(시작점:start, 끝나는 점:stop) >> astype
df[''] = df[''].str.slice(start = , stop = ).astype(int)
# 숫자+특수 기호 형태일때
#기호를 아무것도 없는 상태로 바꾸고, pd.to_numeric
df[''] = df[''].str.replace('특수기호', '')
df[''] = pd.to_numeric(df[''])
pandas.to_numeric(arg, error = 'raise', downcast = None )
arg: scalar, list, tuple, 1-d array, or Series
downcast : 저장하는 실수의 범위가 크지 않을때 이용할 수 있음.
'Aivle school DX track 3기 > mini project' 카테고리의 다른 글
Mini project3 (0) | 2023.03.26 |
---|