분류 전체보기 91

[WIL] 2024_w21_주간 회고

캡처본이 남아있길래 리트코드에서 시작했던 코딩테스트 챌린지를 돌아보았다. 5월 10일에 이 챌린지를 시작했는데, 그 때 까지 28문제를 풀었었고,2주가 지난 지금 12 문제를 더 풀어서 총 40문제를 풀이했다. 이제 앞으로 10문제만 더 풀면 내 계정에 저 뱃지가 생긴다!어려운 문제들만 남긴 했지만 6월 전에 획득할 수 있으면 좋겠다.이번 주의 목표팀 프로젝트 성공적으로 완료하기 → 완료 : 전체적인 진행 흐름이 너무 좋았던 프로젝트였다.파이썬 위키독스 100번까지 풀기 → 실패 : 프로젝트 외에는 거의 못 할 것이라 생각하긴 했지만 진짜 못할 줄 몰랐다.SQLD 짬내서 공부하기 → 실패 : 내일 시험인데 거의 제로 베이스로 시험보러 가야 한다. ㅎㅎㅎ 다음에 다시 봐야지. 이번 주의 학습 키워드RFM ..

[TIL] camp_day28_240524

프로젝트 발표까지 무사히 끝났다. 프로젝트 결과는 나중에 따로 정리할 생각이다.학습 내용SQL에서도 Python의 for문 처럼 반복하여 결과를 출력하게 할 수 있을까?!계속 못 풀고 있던 코딩테스트 문제가 있었다.문제 : 프로그래머스_입양 시각 구하기(2)오답 이유 : 0시부터 23시까지 모든 시간대에 대해 count 결과가 0이어도 행이 출력되어야 함. 하지만 단순히 GROUP BY를 한 결과로는 데이터셋에 존재하는 시간대의 결과만 도출할 수 있어 오답 처리됨.정답 탐색 과정(1) : 다른 코딩테스트에서 풀었던 문제가 유사한 형태의 결과를 요구해서, 이 때 사용한 방법(UNION 활용)을 적용할 수 있었다. SQL -- 진짜 바보같이 풀어서 조금 부끄러움... SELECT t_..

[TIL] camp_day27_240523

프로젝트 마무리 하느라 12시 직전에 끝났다. 전체 발표 흐름과 PPT 제작, 발표 준비가 동시 다발적으로 진행되고 끝났다. SQL 챌린지반 두 번째 세션이 진행되었고, 새로운 문법을 배워서 충격 그 자체였다!팀 프로젝트끝나지 않을 것 같던 프로젝트가 그래도 마무리가 되었고, 24일 발표만 남겨두고 있다.이번 프로젝트에서는 팀장을 맡은 만큼 우리 프로젝트의 전체적인 EDA가 잘 전개되도록 하는 것이 목표였다.팀 노션 페이지에 각 진행 단계 별 페이지를 만들어 내용을 작성하고 관리했다.오전 팀 스크럼 시간에 하루 동안 진행되어야 하는 목표치를 설정하고, 오후 팀 스크럼 시간에는 그 날 진행한 분량에 대해 회고했다.진행 흐름을 놓치지 않도록 기획 단계에서 설정한 목표와 진행 사항이 일치하는지 계속 점검했다...

[TIL] camp_day26_240522

프로젝트 결론이 대략적으로 나왔는데, 뭔가 조금 아쉽다.계속 파이썬 과제와 프로젝트 때문에 밀려서 코테를 못 풀고 있었는데 SQL 문제 막혔던 두 개를 비롯해서 오랜만에 문제를 많이 풀었다.학습 내용JOIN 시 조건을 범위로 지정할 수 있다.문제 : 리트코드_평균 판매 금액 구하기상품별로, 기간에 따라 가격이 변경될 때 각각의 상품들의 평균 판매 금액을 구해서 출력하는 문제였다.지금까지 JOIN 을 할 때 정확히 일치하는 값만 Key로 설정했는데, 처음으로 범위를 지정해도 된다는 것을 알게된 문제.두 개의 테이블을 조인해야 하는데, (1) product_id 끼리 일치하고, (2) 상품 판매일이 특정 가격의 시작일과 종료일 기간 내에 포함되는 값끼리 조인해야 했다.작성한 쿼리문 SQL # 처음 작성..

[TIL] camp_day25_240521

하루 종일 프로젝트로 정신 없었고, SQL 챌린지반 첫 세션을 들었다. 몰랐던 함수를 알게 돼서 막혔던 코테를 풀 수 있을 것 같다.학습 내용Window Function(SQL)GROUP BY 로 그룹핑한 효과를 내주지만, 모든 행을 출력하고 싶을 때 사용한다!GROUP BY 구문과 병행하여 사용이 불가능하고, 다른 함수와 다르게 중첩 사용이 불가능하다.기본 문법 SQL SELECT WINDOW FUNCTION () OVER (PARTITION BY ORDER BY)함수 종류순위ROW_NUMBER() : 중복 순위를 매기지 않고, 어떻게든 데이터 간에 순위를 매겨주는 함수RANK() : 중복 순위를 매김. 공동 n등이 존재하고, 그 다음 순위는 공동 순위 인원 수만큼 밀린다. 즉, 공동 1등 2명이..

[TIL] camp_day24_240520

벌써 데이터분석 캠프 여섯 번째 주차 시작이다.팀 프로젝트데이터 분석에 필요한 내용들은 배웠지만, "그래서 데이터 분석 과정을 어떻게 설계하는 건데?" 라는 의문이 종일 들었던 하루였다.프로젝트 기획과 목적 설정 단계는 잘 이루어졌는데... 막상 데이터 분석을 하니까 이런저런 문제에 부딪혔다.기술적인 문제 : 파이썬을 아직 자유자재로 다루는 게 아니다보니, 작업의 결과물은 알겠는데 코드를 모르겠는 일이 반복되었다.데이터 분석 절차론적 지식의 부재 : 기초통계량을 통해 '어떤 걸 더 확인하자' 라는 목적의 가설을 설정했으나, 후속으로 어떤 작업을 해야 하는지를 몰라 헤멨다.데이터셋 관련 정보 부족 : 그래도 이건 어느 정도 분석해보면서 파악하고 있다. 내일은 오늘보다 우리의 프로젝트가 보다 발전되길 바라며..

[TIL] camp_day23_240517

시작 단계에서는 뭐부터 시작해야 하는가... 하고 고민했던 하루였다.팀 프로젝트다음 주 금요일에 있을 발표를 위해 주어진 과제 리스트에서 하나를 선정해 프로젝트 기획을 간략하게 제출했다.우리 조가 선택한 데이터는 케글의 Superstore Marketing Campaign Dataset 이다. Kaggle_superstore해보고 싶은 흥미로운 주제가 많았는데, 그 중에서도 우리 팀원들이 가진 최대한의 역량을 끌어낼 수 있는 도메인을 잘 선택한 것 같다.오늘 대략적인 프로젝트 주제, 목표 선정이 끝났고, 다음 주에 검증해 볼 가설들도 적어보았다.적으면서 생각해보니 문제 정의를 안 했나...? 일단 오늘은 끝났으니까 다음 주에 생각해야겠다. :)다만 나중에 시간이 되면 혼자라도 분석해봐야지 싶었다. 케글 ..

[TIL] camp_day22_240516

하루 쉬고 왔다고 리듬이 끊길 줄 알았는데, 생각보다는 집중이 잘 됐다. 어제 소모임 프로젝트 기획서를 쓴 덕일까?!학습 내용아직 해결 못한 문제(Python)오늘 풀어볼 순서의 알고리즘 문제였는데, 처음 생각한 흐름과 달리 계속 제대로 된 결과가 출력되지 않아서 때려친 상태다.이 정도가 카카오 인턴십을 뽑는 수준이라니... 전혀 안 풀려서 좀 시무룩해졌다. 언제쯤 파이썬을 손발처럼 쉽게 다룰 수 있을까?문제 : 프로그래머스_숫자 문자열과 영단어해결 흐름 : 숫자와 영단어 문자로 구성된 문자열 s를 리스트로 변환한 뒤,이 리스트의 i에 대해 숫자인지 문자열인지 반복문을 통해 확인하고 숫자일 때만 빈 리스트에 추가하고영단어 숫자를 인덱스와 일치하도록 리스트를 하나 만들어 변수 i의 위치를 기준으로 +3 ..

[TIL] camp_day21_240514

5주차 둘째 날! 내일은 부처님이 오셔서 쉰다~~학습 내용내 코드를 짧게 수정해보자!(Python)오늘 풀었던 알고리즘 코딩테스트 코드인데, 너무 길게 쓴 거 같아서 마음에 들지 않았다.다른 사람들의 풀이를 보면서 조금 수정해보았다. 더 줄일 수 있을 것 같은데 아직은 방법이 생각나지 않는다.문제 : 프로그래머스_최소직사각형 Python # 내 코드 def solution(sizes): list_w = [] list_d = [] for [w, d] in sizes: if w >= d: list_w.append(w) list_d.append(d) elif d > w: list_w.append(d) ..

[TIL] camp_day20_240513

벌써 5주차 시작이다.이번 주에는 파이썬을 통한 데이터 전처리 및 시각화 방법에 대해 수강하고, 금요일부터는 팀 프로젝트를 시작한다.학습 내용어떻게 하면 하루를 알차게 보낼 수 있을까?(feat. Python)요즘 수강해야 하는 강의 진도가 계속 뒤쳐지고 있어서 이런 저런 고민이 든다.더 기나긴 하소연과 해결하려 시작한 방법 : 하루 목표와 학습 계획 관리를 어떻게 하면 좋을까?계획 달성률 계산을 대충 계산기로 해도 되지만, 이왕 Python과 pandas 라이브러리를 배우고 있는 겸, Python에서 계산하는 코드로 구현해보았다. 코드 개선이 필요하다. 그래도 f-string을 잘 활용했다. Python import pandas as pd morning = pd.Series([1,1,1,0,..