본문 바로가기

전체 글

(131)
[240221] SQL: 코드카타 125~126(regexp) & 파이썬: 코드카타 33 [SQL 코드카타] 1517. Find Users With Valid E-Mails https://leetcode.com/problems/find-users-with-valid-e-mails/ 1) 어떤 문제가 있었나 주어진 조건에 맞는 유효한 이메일 주소를 출력하는 문제 (조건) - 이메일id는 영문, 숫자, 언더바(_), 점(.), 대쉬(-)로만 구성 - 이메일id 첫 글자는 무조건 영문으로 시작 - 도메인 주소는 @leetcode.com 2) 내가 시도해본 건 무엇인가 like '%~' 로는 도메인 주소만 걸러낼 수 있어서, 영문과 숫자 등 여러 조건을 포함 할 수 있는 함수 구글링 > REGEXP 발견하여 적용해보았으나, #(샾) 특수문자가 포함된 메일을 걸러내지 못해서 실패 select user..
[240220-21] 태블로(Tableau) - 데이터 시각화, 계산식 활용 [실습으로 배우는 태블로 by 주정민 튜터] 0. 들어가기 전 - 태블로에서 추가 기능 구현하고 싶다면? 공식 문서에서 확인 후 구글링 하는 것이 좋음 └ 공식 유튜브 https://www.youtube.com/@Tableau-eo8gj └ 공식 문서 사이트(https://help.tableau.com/current/guides/get-started-tutorial/ko-kr/get-started-tutorial-home.htm └ 추천 아티클 참고: https://www.tableau.com/ko-kr/learn/whitepapers 1. BI 소개 1) BI란? - 비즈니스 인텔리전스 (Business Intelligence, BI)의 약어 - 조직이 데이터 기반 의사 결정을 빠르게 할 수 있도록 돕..
[240220] SQL: 코드카타 123~124(not exists, offset, group_concat) & 파이썬: 코드카타 31~32(zip) [SQL 코드가타] 1. 176. Second Highest Salary https://leetcode.com/problems/second-highest-salary 1) 어떤 문제가 있었나 급여가 두 번 째로 높은 값만 추출하는 문제로 두 번째 값이 없으면 null 반환 2) 내가 시도해본 건 무엇인가 rank로 급여액에 따라 순위를 매기고, 랭킹 숫자가 2이면 salary 칼럼 값을, 아니면 null을 출력하는 쿼리 작성 > 값이 하나일 때 null 처리가 안 되고, 값이 빈 상태로 출력되는 오류 발생 select if(ranking = 2, salary, 'null') as SecondHighestSalary from (select salary, rank() over(order by salary d..
[240219] SQL: 코드카타 122 [SQL 코드가타] 196. Delete Duplicate Emails https://leetcode.com/problems/delete-duplicate-emails/ 1) 어떤 문제가 있었나 Delete 를 활용해 중복된 이메일 중에 id가 가장 낮은 값만 남기는 쿼리 작성 2) 내가 시도해본 건 무엇인가 작성한 코드가 어떻게 구현되나 중간중간 확인하고자 했으나 그 어떤 코드를 적어도 결과는 'Person' 테이블만 출력됨 결국 다른 사람 답을 통해서 사용 경험이 없는 delete는 어떻게 활용해야 하는지 확인함 3) 어떻게 해결했나 delete p1 from Person p1 join Person p2 on p1.email = p2.email and p1.id > p2.id; 4) 무엇을 새롭게 알..
[240212주차] 본캠프 W9 WIL : Weekly I Learned 지난 일주일을 돌아봄으로써 나의 현재 상태를 파악하고 더 나은 다음 주를 만들기 위해 어떤 부분을 어떻게 채워나갈지 고민하는 것 내가 한 일(Facts) - 심화 프로젝트 데이터 분석 및 발표 자료 준비 느낀점(Feelings) - 심화 프로젝트 데이터를 본격적으로 분석하고 스토리라인을 짜는 주간이었다. 파이썬 코드를 짜느라 애를 먹었는데, 막상 결과물은 심플해서 조금 허탈했다. 간단한 비중이나 카테고리별 수치 차이를 확인할 때도 여러 줄의 코드를 작성해야 했는데, 더 효율적인 방법이 있는데 내가 모르는 건지, 아니면 파이썬은 원래 그런 방식인데 내가 느린 탓에 답답하게 느껴지는 건지 궁금해졌다. - 라인 그래프에서 보조축을 설정하는 방법을 찾다가 시간이 부족해서..
[240216] 구매자 예측 모델링(실패한 코드) * 자료 출처: Kaggle - Google Analytics Customer Revenue Prediction 1. 문제 배경 - GA 로그데이터를 활용해 구매자 예측 모델링 시도 - 매출액 칼럼에서 NaN은 미구매로 간주하고 0, 매출액이 있는 값은 1로 대치 - 데이터 분리, 인코딩 및 스케일링 작업 진행 - 프로젝트 시간이 부족하여 추가 전처리 및 x변수 조정 작업하지 못하고 실패로 마무리 2. 모델링 - 데이터 분리 from sklearn.model_selection import train_test_split # 데이터를 train, test로 분리 X = df.drop(columns = ['Revenue_yn']) y = df[['Revenue_yn']] # 학습과 평가를 위해 데이터 셋 분리..
[240215] 피벗 테이블을 활용한 히트맵 시각화 * 자료 출처: Kaggle - Google Analytics Customer Revenue Prediction 1. 문제 배경 - 요일별-시간대별 방문자수와 구매수를 히트맵으로 시각화 2. 히트맵 생성 # 시간대별 데이터 출력을 위해 시간으로 변환 visit_hour = df['visitStartTime'].dt.hour visit_dayofweek = df['visitStartTime'].dt.weekday # 월요일이 0 # 피봇테이블 생성 # 행 index는 시간, 열 columns는 요일, 사용할 값은 방문자수 wod_hour_pivot = pd.pivot_table(df, index=visit_hour, columns=visit_dayofweek, values=['fullVisitorId'],..
[240214] 파이차트: 기준값 추가 / 막대그래프: X축 이름 및 간격 변경 * 자료 출처: Kaggle - Google Analytics Customer Revenue Prediction 1. 문제 배경 - 평균세션시간별 방문자수 비중을 파이 차트로 시각화 필요 └ 평균세션시간이 0인 비중이 94%, 나머지 시간은 각 비중이 현저히 낮아 특정 기준 이하 값은 합계하여 '기타' 항목 처리 - 막대그래프에서 X축 이름과 간격 별도 지정 2. 파이차트 - 평균세션시간이 0인 비중이 94%로, 나머지 시간대는 항목이 많고, 비중이 미비하여 합계 값으로 표기 필요 - 1) 전체 수치에서 백분율을 구하고, 2) 기준치에 따라 일부는 sum 적용하여 파이차트용 데이터프레임 생성 ## 평균세션시간별 비중 # df_avg_session_time가 유저별 평균세션시간이 저장된 변수 # 평균세션시..