본문 바로가기

전체 글50

2/13 - 심화 프로젝트; 데이터 전처리 및 프로젝트 진행 현황 [심화 프로젝트 진행 현황] 데이터 분석 부문: 80% 완료 (데이터 전처리 100% 완료 / 명일 시각화 예정) 모델링 부문: 50% 완료 (서울 부동산 데이터 기준, 기타 데이터의 법정동-행정동 매칭 완료) 명일 해야할 사항 - 데이터 분석 부문: 시각화 집중 - 모델링 부문: 1) 2차 데이터 전처리(연도별/분기별 집계 함수 사용 예정, 컬럼 검수 필요) 2) 선형회귀 or 로지스틱회귀 모델링 [배운 점] 예측 모델링이 반드시 미래를 예측하는 모델링은 아니다. 모델링의 방법은 여러 가지가 있다. 사실 특정 변수의 적정 값이 맞는지 체크하는 모델링은 선형회귀와 로지스틱회귀를 사용하면 되는 아주 단순한 사실을 깨달았다. 팀원들의 능력이 상향평준화 되어 있어 일하기가 매우 편하다. 팀 합이 좋아서 다행이.. 2024. 2. 13.
2/7 - 심화 프로젝트; 데이터 1차 가공 및 프로젝트 진행 현황 [심화 프로젝트] 이미 우리 팀은 지난 주부터 세팅에 들어가기도 했고, 다들 머리 회전력이 좋아서 결정이 빨리 됨. 그리하여, 장황한 우리 팀의 프로젝트 진행 현황은 아래와 같음. 구글 스프레드 시트에 써뒀던 계획 그대로 노션에 옮겨둠. 캠프 내부에서 멘토링 받으라고 문서 샘플을 따로 줬는데, 굳이 이걸 써야 되나 싶음. 시간 아까움. 그래서 남들 다 보는 잡담방에 그대로 우리팀은 공식적으로 쓰지 않겠다고 담당 매니저한테 못 박아 둠. 팀 별로 튜터들이 배정됐는데, 처음엔 우리 팀이 정한 주제가 우리 팀을 제외하고 없었음. 그런데 갑자기 B07조에서 우리 팀과 같은 주제로 변경함. 무엇? 양아취들이신지? 전략가가 2명이나 있는 팀은 어떻게 분석하는지 제대로 보여줘야겠음. 이건 실력이 아니라 머리 싸움이다.. 2024. 2. 7.
2/6 - 머신러닝모델링; 데이터 전처리_이상치(Outlier) 처리 방법 [기억할 개념] 1. 이상치(Outlier)란: 보통 관측된 데이터 범위에서 많이 벗어난 아주 작은 값 혹은 큰 값 1-1. Extreme Studentized Deviation(ESD) 이용 #최대값, 최소값 확인 print(upper_limit, lower_limit) #값 비교 tips_df[['total_bill']].head(3) #이상치 확인 (아래 조건에 부합=True 값만 추출) cond = (tips_df['total_bill'] > 46.4) cond tips_df[cond] 1-2. IQR(Inter Quantile Range)를 이용 #이상치 확인 (상한값 40.29보다 큰 값만 추출) cond2 = (tips_df['total_bill'] > uppner_limit2) tips_d.. 2024. 2. 6.
2/5 - 머신러닝모델링; 선형회귀&로지스틱회귀 [기억할 개념] 1. 선형회귀 1) 단순선형회귀: x 변수가 1개 from sklearn.linear_model import LinearRegression model_lr = LinearRegression() type(model_lr) x = body_df[['Weight']] y = body_df[['Height']] #데이터 훈련 model_lr .fit(x = x, y = y 해석 #y(키)는 x(몸무게)에 0.86을 곱한 뒤에 109.37을 더해라 2) 다중선형회귀: x 변수가 2개 #1. y= 0.86x + 109.37 #2. 위 식을 활용한 예측 칼럼 추가 #3. 에러값을 각각 계산(error) #4. 양수를 만들기 위해 제곱화 #5. 값을 모두 더함(MSE) #6. 그래프로 그리기 #예측값 .. 2024. 2. 5.
2024.02.02 부트캠프 7주차 - 주간 회고록 [7주차 기간]: 2024.01.29 ~ 02.02 (5일) [7주차 진척도]: 기초 통계학 40% 유지 / 머신 모델링 1.5% 수강 [진척도 부진 사유]: 금주 월요일에 오빠가 상을 당해서 장례식에 삼우제까지 참여하느라 공부하지 못함. (주말 내 100% 수강 예정) FACTS: [역할: 팀장] 현재 데이터셋 및 주제 설정 단계로, 데이터셋 서치에 집중하는 기간이다. 하나의 주제를 분석할 때 최소 4개 이상의 데이터 셋이 필요하기에, 가능한 정해진 카테고리 내(주거, 금융, 스타벅스)에서 심도 있게 서치 하기로 협의했다. 2/5일까지 마감일이고, 발제일인 2/6일에 공지가 끝난 즉시, 바로 착수 회의를 할 예정이다. 주제는 크게 세 꼭지이다. 변동 가능성이 매우 높고 가제이기에 참고만 하는 수준이다... 2024. 2. 2.
2/2 - Python; 개인과제 피드백 [피드백] * 오답문제만 오답이라고 채점 문제1) 오답 [잘하신 부분] map을 활용한 for 문 출력 [보완해야할 점] 1. 기준치값(n)을 함수의 두번째 전달인자로 받아 설계할 것2. if구문에서 20넘는 것은 과잉으로 잘 구현 했으나 else: 구문에서는 20보다 같거나 작은 것이 과잉으로 판단되었음. 이부분 오류 문제2) [잘하신 부분] 정규표현식 모듈 re와 함수 return 부분을 잘 적용함 [보완해야할 점] map과 print 를 함수 내에 작성하여 완성된 함수로 작성했으면 best 문제3) [잘하신 부분] 좀더 general 한 문제 ex 동명이인이 없는 참여자의 경우 해당 코드가 작성하지 않을 것이나 아이디어는 좋은 방법이라고 여겨짐. 문제를 조금 단순하게 설계한 것의 한계이며 정답은 맞.. 2024. 2. 2.
2024.01.26 부트캠프 6주차 - 주간 회고록 [6주차 기간]: 2024.01.22 ~ 01.26 (5일) [6주차 진척도]: Python 데이터 전처리 수강 100% 완료 / 기초 통계학 40% 완료 (주말 내 100% 수강 예정) [신규 팀 정보] : MBTI로 F와 T가 반반, I와 E가 반반, 그리고 20대와 30대가 반반이라 팀 이름을 '반반따리'로 정함. FACTS: [역할: 팀장] 이번 프로젝트에서도 또 팀장이 됐다. 금번 심화 프로젝트 기간에 설 연휴가 껴 있어서, 전략적으로 차주부터 주제와 데이터셋을 찾는 걸로 타임라인을 설정했다. 목표는 2/1(목) 전원이 찾아온 주제와 데이터셋을 모두 구글 스프레드 시트에 기재해 두고, 2/2(금)에 전원이 오프라인으로 모여 주제 설정과 방향성을 논의할 예정이다. 다만, 차주에 머신 러닝 모델링 .. 2024. 1. 26.
1/26 - Pandas&Python; 기초 문법② & 개인과제 [기억할 개념]: Python - Pandas 1. concat(): 데이터프레임을 위아래로 or 좌우로 연결 예시 axis: 연결하고자 하는 축 방향 지정 기본값은 0 => 위아래로 연결하는 경우 해당 / 1로 설정 => 좌우로 연결 ignore_index: 연결된 데이터프레임의 인덱스 설정 false => 인덱스 유지 / true => 새로운 인덱스 생성 import pandas as pd # 두 개의 데이터프레임 생성 df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']}) df2 = pd.DataFrame({'A': ['A3', 'A4', 'A5'], 'B': ['B3', 'B4', 'B5']}) # 상하로 데이터프레임 연결 r.. 2024. 1. 26.
1/25 - Pandas&Python; Python 기초 문법① [기억할 개념]: Python - Pandas 1. .iloc[행,열] : 인덱스 번호로 선택 data.iloc[0,2] #행과 열 번호를 통해 특정 데이터를 선택할 수 있음 # iloc을 사용하여 특정 행과 열 선택 selected_data = df.iloc[1:4, 0:2] #인덱스 1부터 3까지의 행과 0부터 1까지의 열 선택 print(selected_data) 2. .loc[로우,컬럼] : 이름으로 선택 data.loc['행이름' , '컬럼명'] #행이름과 컬럼명을 통해서도 특정 데이터를 선택할 수 있음 #loc을 사용하여 특정 행과 열 선택 selected_data = df.loc['b':'d', 'A':'B'] #레이블 'b'부터 'd'까지의 행과 'A'부터 'B'까지의 열 선택 print(.. 2024. 1. 25.