본문 바로가기

전체 글

(188)
[나도코딩] 데이터 분석 및 시각화 - Pandas 요약 https://youtu.be/PjhlUzp_cU0 >> pandas 불러오기 import pandas as pd 1. series : 1차원 데이터(정수, 실수, 문자열 등) > series 만들기 temp=pd.Series([-20,-10,10,20]) > series index 지정 temp=pd.Series([-20,-10,10,20], index=['Jan','Feb','Mar','Apr']) # 색인 temp['Jan'] #index Jan{1월}에 해당하는 데이터 출력 2. DataFrme : 2차원 데이터(정수, 실수, 문자열 등) #2차원 데이터 초기화 data={ '이름' : ['채치수','정대만',"송태섭","서태웅","강백호","변덕규","황태산","윤대협"] ,'학교' : ["북산..
[Python] 요세푸스 문제(1158) /시간초과 극복 >> 문제 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. >>입력 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) >>출력 예제와 같이 요세푸스 순열을 출력한다. >>예제 예제 설명 >> 원형 큐처럼 끝 index..
[MYSQL] 자동차 대여 기록별 대여 금액 구하기 문제 분석 테이블 1. CAR_RENTAL_COMPANY_CAR : 대여가능한 자동차들의 정보 2. CAR_RENTAL_COMPANY_RENTL_HISTORY : 렌탈 시작/종료 일 등의 정보 3. CAR_RENTAL_COMPANY_DISCOUNT_PLAN : 대여기간에 따른 할인률 정보 >>문제 요건1 : 자동차 종류는 트럭 요건2. 대여기록별로 대여금액을 출력 요건3. 대여금액 -> 기록ID 순 내림 차순 >>예시 1단계: 트럭 들의 대여기간 구하기 => datediff 함수를 사용하여 각 대여 기간의 이름을 LEFT JOIN하기 위해 => CAR_RENTAL_COMPANY_DISCOUNT_PLAN 테이블의 기간 이름과 일치시킴 결과 : 트럭이고 DURATION이 계산됨 2단계: 트럭 들의 대여기간 ..
[Python] 라면사기 (Small) / 예외상황 고려
[MYSQL] 입양시각 구하기(2) / 변수로 반복값 만들기 >> 문제 >>예시 >>막혔던 부분 : HOUR을 기준으로 GROUP BY 하면 데이터가 없는 열은 행으로 잡히지 않음 -> 인위적으로 0부터 23까지 만들어줘야 함 > 내가 한 풀이 : 그런데 이렇게 하고 찝찝함이 남음 : 진짜 ROW_NUMBER로 강제적으로 0-23까지 만드는게 맞나?? >>다른 사람들의 풀이 출처 : https://jaaamj.tistory.com/155 [프로그래머스 SQL] 입양 시각 구하기(2) 문제 설명 ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아 jaaamj..
5-4) 범주형 변수 분석 #0. 준비단계 : 데이터셋 로드 및 라이브러리 import - 라이브러리 불러오기 -seaborn에 내장된 데이터셋 'mpg' 로드 #1. Count : 각 범주별 빈도수 세기 -1개 변수의 빈도수 => series : 변수. value_counts() -2개 변수 빈도수 => table : 데이터셋. crosstab( 변수1, 변수2) df['origin'].value_counts() pd.crosstab(df['origin'], df['cylinders'] ) - 빈도수 그래프=> countplot : 데이터셋. countplot( data=데이터셋, x= 변수1) #옵션 - hue : 범주별로 다른 색상 표현 #countplot ->origin 빈도수 시각화 하기 sns.countplot(data..
5-3) 수치형 데이터 변수의 요약과 기술통계 #0. 준비단계 : 데이터셋 로드 밑 라이브러리 import - 라이브러리 불러오기 -seaborn에 내장된 데이터셋 'mpg' 로드 #1. 고유값 파악하기 고유값 : 데이터셋.unique() 고유값 개수 : 데이터셋.nunique() #2. 히스토그램 그리기 - 데이터셋. hist(옵션들) -옵션1 : figsize = 그래프의 크기 -옵션2 : bins = 막대의 개수 - 왜도 : 분포의 치우침을 나타냄 => 양수 : 왼쪽에 몰린 형태 => 음수 : 왼쪽에 몰린 형태 => 구하는 식 : 데이터변수. skew() -첨도 : 분포의 몰린 정도(뾰족함)을 나타냄 : 3보다 클 경우 정규분포보다 납작 : 3보다 작을 경우 정규분포보다 뾰족 사용방법 : 데이터셋.kurt() ex) df.kurt() #3. s..
[MYSQL] 년, 월, 성별 별 상품 구매회원 수 구하기 >> 문제 설명 >>문제 USER_INFO 테이블과 ONLINE_SALE 테이블에서 1. 년, 월, 성별 별로 상품을 구매한 회원수를 집계하는 SQL문을 작성해주세요. 2. 결과는 년, 월, 성별을 기준으로 오름차순 정렬해주세요. 3. 이때, 성별 정보가 없는 경우 결과에서 제외해주세요. >>예시 >>막혔던 점 - 다양한 GROUP BY절 기준 - JOIN을 통한 각 변수 지정열 - USER_ID를 중복하여 셈(틀린 이유) >>틀린 코드 =>USER_ID가 중복되는 경우에도 USER를 중복하여 세 버림 >>고친 코드 => DISTINCT를 통한 중복열 제거