SELECT
ao.animal_id
, ao.name
FROM
animal_outs ao
LEFT JOIN animal_ins ai
ON ao.animal_id = ai.animal_id
WHERE
ai.animal_id IS NULL
ORDER BY
ao.animal_id
;
SELECT B.ANIMAL_ID AS ANIMAL_ID, B.NAME AS NAME FROM ANIMAL_OUTS B
MINUS
SELECT A.ANIMAL_ID AS ANIMAL_ID, A.NAME AS NAME FROM ANIMAL_INS A
ORDER BY ANIMAL_ID
SELECT
animal_id
, name
FROM
animal_outs
WHERE
animal_id
NOT IN (
SELECT
animal_id
FROM
animal_ins
)
ORDER BY
animal_id
;
→ WHERE절에서 NOT IN의 값으로 (animal_id, name) NOT IN
과 같이 2개 이상의 값에 대해서 넣지 않은 이유:
animal_id가 A395451인 개가 animal_out에서는 이름이 Logan인데 animal_ins에서는 Rogan임
select ANIMAL_ID, name
from ANIMAL_OUTS o
where not exists (select 1 from ANIMAL_INS where animal_id = o.animal_id)
order by ANIMAL_ID
;
def solution(n):
return 2*(((n//2)+1)*(n//2))/2
def solution(n):
return sum(range(2, n+1, 2))
# range는 이미 iterable 객체이기 때문에 list comprehension으로 다시 풀어 쓸([i for i in range(2, n + 1, 2)]) 필요 없이 바로 sum 함수에 넣을 수 있습니다.
# 유사한 다른 방법
def solution(n):
return sum([i if i%2==0 else 0 for i in range(2,n+1)])
def solution(n):
answer = 0
for i in range(2, n+1, 2):
answer += i
return answer
# 유사한 다른 방법
def solution(n):
answer = 0
for i in range(1, n + 1):
if i % 2 == 0:
answer += i
return answer
def solution(n):
return sum(filter(lambda v: v % 2 == 0, [_ for _ in range(n+1)]))
문제 정의:
분석의 목적을 명확히 하고, 해결하고자 하는 문제를 정의합니다.
예를 들어, 매출 감소의 원인을 찾거나 고객 만족도를 평가하는 등의 목표를 설정합니다.
데이터 수집:
필요한 데이터를 수집합니다. 데이터는 내부 시스템, 설문조사, 웹 스크래핑, API 등 다양한 출처에서 얻을 수 있습니다.
수집할 데이터의 종류(정량적, 정성적)를 결정합니다.
데이터 전처리:
수집한 데이터의 품질을 높이기 위한 작업입니다.
결측치 처리, 이상치 제거, 데이터 형식 변환, 데이터 정규화 등을 포함합니다.
또한, 필요한 경우 데이터 변환(예: 범주형 변수를 더미 변수로 변환)도 진행합니다.
탐색적 데이터 분석 (EDA):
데이터의 구조와 패턴을 이해하기 위한 과정입니다.
시각화 도구(예: 히스토그램, 박스 플롯, 산점도)를 사용하여 데이터를 시각적으로 탐색하고, 통계적 방법을 활용하여 데이터의 특성을 분석합니다.
모델링:
분석 목표에 맞는 모델을 선택하고, 데이터를 사용하여 모델을 구축합니다.
회귀 분석, 분류 알고리즘, 군집화 등 다양한 기계 학습 알고리즘을 적용할 수 있습니다.
모델 평가:
구축한 모델의 성능을 평가합니다. 이를 위해 교차 검증, 정확도, 정밀도, 재현율 등의 지표를 사용합니다.
모델이 실제 데이터에 얼마나 잘 적합되는지 확인합니다.
결과 해석:
모델의 결과를 해석하고, 비즈니스적 관점에서 의미를 도출합니다.
분석 결과를 기반으로 의사결정에 필요한 인사이트를 제공합니다.
보고 및 시각화:
분석 결과를 이해하기 쉽게 시각화하고, 관련자들에게 전달합니다.
대시보드, 프레젠테이션, 리포트 등을 통해 결과를 공유합니다.
모니터링 및 피드백:
모델을 실제 환경에서 적용한 후 지속적으로 성능을 모니터링하고, 필요시 수정합니다.
새로운 데이터나 변화된 환경에 따라 모델을 업데이트합니다.