Today I Learned (TIL) 71

[TIL] 통계학 기초 - 2주차(2)

4. 정규분포 종 모양의 대칭 분포로 대부분의 데이터가 평균 주위에 몰려있는 분포를 말한다. 평균을 중심으로 좌우 대칭이며 평균에서 멀어질수록 데이터의 빈도가 감소한다. 키와 몸무게, 시험점수 등과 같은 상황에서 관찰된다. 5. 긴 꼬리 분포 대부분의 데이터가 분포의 한쪽 끝에 몰려있고 반대쪽은 긴 꼬리가 이어지는 형태의 분포이다. 정규분포와 달리 대칭적이지 않고 비대칭적인 것이 특징이다. 특정한 하나의 분포를 의미하지 않으며 여러 종류의 분포(파레토 분포, 지프의 법칙, 멱함수)를 포함할 수 있다. 소득분포, 온라인쇼핑, 도서판매(소량의 베스트셀러 도서 - 다량의 비인기 도서)와 같은 일부가 전체적으로 큰 영향을 미치는 경우에 볼 수 있다. # 긴 꼬리 분포 생성 (예: 소득 데이터)long_tail ..

[TIL] 통계학 기초 - 2주차(1)

1. 모집단과 표본- 모집단과 표본 모집단이란 관심의 대상이 되는 전체 집단을 말하고 표본이란 이 모집단에서 추출한 일부를 말한다. 표본을 사용하는 이유는 모든 데이터를 수집하는 것은 물리적으로 불가능한 경우가 많고 비용과 시간을 절약할 수 있다는 현실적인 제약 때문이다.- 대표성 잘 설계된 표본은 모집단의 특성을 반영할 수 있다. 이를 통해 표본에서 얻은 결과를 모집단 전체에 일반화할 수 있다. 무작위로 표본을 추출하면 편향을 최소화하고 모집단의 다양한 특성을 포함할 수 있다.- 데이터 관리 및 모델 검증 큰 데이터셋은 분석에 많은 컴퓨팅 자원이 필요할 수 있지만 작은 표본은 이런 부담을 줄여준다. 또한, 작은 표본은 데이터 품질을 더 쉽게 관리하고 오류나 이상값을 식별하여 수정할 수 있다. 표본 데이..

[TIL] 통계학 기초 - 1주차

1. 통계의 중요성- 데이터를 분석하고 이를 바탕으로 결정을 내릴 수 있다. 데이터 분석에서 통계는 데이터를 이해하고 해석하는 데 중요한 역할을 한다. 데이터를 요약하고 패턴을 발견하고 추론을 통해 결론을 도출화하는 과정을 돕는다. 기업에서는 보다 현명한 결정을 내리고 수익을 창출하기 위해 데이터 기반의 의사결정을 내린다.- 실제 통계 사용 1) 고객 만족도 설문조사 2) 고객 유형별 세그먼트 상품 추천 3) 기업 전략 수립 4) 마케팅 5) 신제품 개발 2. 기술통계 데이터를 요약하고 설명하는 통계 방법이다. 주로 평균, 중앙값, 분산, 표준편차 등을 사용한다. 데이터를 특정 대표값으로 요약하여 데이터에 대한 대략적인 특징을 간단하고 쉽게 알 수 있다. 회사의 매출 데이터를 요약하기 위해 평균 매출, ..

[TIL] Python 베이직 - 5회차

1. Series 란?  1차원 배열을 말한다.. 리스트를 시리즈로 정의해서 불러오면 숫자 인덱스를 생성해서 보여준다.s = pd.Series(['부장', '차장', '대리', '사원', '인턴'])-----------------------------------------------------------------------------------------------s = pd.Series([91, 2.5, '스포츠', 4, 5.16]) 2. DataFrame 란? 2차원 데이터 구조로 Excel과 같다. 딕셔너리를 이용해서 DataFrame를 만들면 key값이 column이 되어 나타난다.pd.DataFrame([[1, 2, 3], [4, 5, 6], ..

[TIL] SQL 베이직 - 5회차

1. 관리구문- DML Data Manipulation Language. 데이터 입력/수정/삭제하는 명령어이다.- TCL Transaction Control Language. 트랜잭션(Transaction)을 제어하는 명령어이다. 트랜잭션이란 쪼갤 수 없는 업무처리 단위를 말한다. 무조건 한 세트로 묶여야 하는 논리적인 업무 단위로 2가지 액션이 있을 때 하나로 묶여 한 번에 동작이 되어야 한다.- DDL Data Definition Language. 데이터를 정의하는 명령어이다.- DCL Data Control Language. user를 생성하고 권한을 부여하는 명령어이다.구분명령어설명-SELECT-DMLINDERT데이터 입력UPDATE데이터 수정DELETE데이터 삭제TCLCOMMITINSERT/UP..

[TIL] SQL 챌린지 - 5회차

1. 윈도우 구문 Postrgres SQL 등 엄격한 ANSI SQL을 제공하는 경우 SELF JOIN 필수이다. 윈도우 구문은 이동평균, 누적 합계, 순위 계산이 가능하여 일종의 서브쿼리 역할을 한다. 윈도우 구문을 사용하면 가독성이 올라간다.-- 일반적인 구문SELECT 집계함수() OVER ( [PARTITION BY {컬럼명1}], [ORDER BY {컬럼명2}]) FROM {테이블}; 2. 윈도우 구문 함수- ORDER BY 구문 함수 내에서 데이터를 정렬하는 데 사용된다. 일반적인 ORDER BY 구문과 달리 윈도우 함수가 적용되는 범위 내에서만 정렬된다.-- 전체 직원을 대상으로 월급을 많이 받는 순위 매기기SELECT employee_id, department_id, sa..

[TIL] Python 베이직 - 4회차

1. 파이썬 가상 환경 하나의 독립된 파이썬 실행 환경으로 파이썬 패키지 설치 및 사용이 가능하다. 이 가상환경은 다른 프로젝트와 격리되어 각기 다른 프로젝트가 서로 간섭하지 않도록 한다.여러 프로젝트를 동시에 작업할 때, 각 프로젝트에서 필요한 패키지 버전이 다를 수 있는데 이때 가상 환경을 사용하면 각 프로젝트별 필요한 패키지를 독립적으로 관리할 수 있다. 가상 환경을 사용하면 프로젝트와 관련된 패키지 목록을 쉽게 관리하고 공유가 가능해 다른 개발자도 동일한 환경을 쉽게 설정할 수 있다. 가상 환경을 사용하지 않고 패키지를 설치하면 시스템 전체에 영향을 미칠 수 있다. 특히, 시스템에 기본으로 설치된 파이썬 패키지를 변경하면 시스템 안정성에 문제가 생길 수 있다. 가상 환경을 사용하면 이러한 문제를 ..

[TIL] SQL 베이직 - 4회차

1. 산술 연산자수학에서 사용하는 사칙연산의 기능을 가진 연산자이다.연산자의미우선순위( )우선순위 조정1*곱하기2/나누기(0으로 나누면 NULL)2+더하기3-빼기3%나머지(0으로 나눌경우 NULL)3 2. 함수- 문자 함수구분설명ASCII(문자열) 문자열의 가장 왼쪽 문자의 아스키 코드 값을 반환하는 함수ASCII코드는 총 128개의 문자를 숫자로 표현할 수 있도록 정의해 놓은 코드LOWER(문자열)문자열을 소문자로 변환UPPER(문자열)문자열을 대문자로 변환LTRIM(문자열)문자열의 왼쪽 공백 제거RTRIM(문자열)문자열의 오른쪽 공백 제거TRIM(문자열)문자열의 왼쪽과 오른쪽 공백 제거SUBSTR(문자열, 시작점, [길이])문자열의 원하는 부분만 잘라서 반환길이를 명시하지 않았을 경우 문자열의 시작점..

[TIL] SQL 베이직 - 3회차

1. UNION 여러 개의 SELECT 문의 결과를 하나의 테이블로 연결하여 보고 싶을 때 사용한다. UNION을 사용할 때는 두 SELECT문의 열과 개수, 순서, 형식이 모두 동일해야 한다. 중복을 제거하고 하나로 표기하고 싶다면 UNION만 사용하고 중복을 제거하지 않고 모두 표기하고 싶다면 UNION ALL로 표기한다.# union/union all 기본구조select name, goods_nm, pay_date # 컬럼 순서가 같고, 그 형식이 같아야 함 from 테이블명1union (all) #수직결합 명시select name, goods_nm, pay_date # 컬럼 순서가 같고, 그 형식이 같아야 함 from 테이블명 2 ; 2. DB 정규화 정규화는 데이터베이스의 데이터 정합성을 위해..

[TIL] SQL 챌린지 - 4회차

1. 날짜형 자료 기본 협정시계시(Universal Time Coordinated)는 1972년에 공표된 국제적인 표준 시를 말한다. 한국은 UTC+9시간에 속하므로 기준시보다 9시간 빠르다.함수설명CURDATE현재 서버 날짜CURTIME현재 서버 시간NOW현재 서버 날짜 및 시DATETIMEYYYY-MM-DD HH:MMTIMEHH:MM:SSDATEYYYY-MM-DDYEARYYYY or YYTIMESTAMPYYYY-MM_DD HH:MM구분DATETIMETIMESTAMP용도시간대를 임의로 설정REALTIME 저장이 필요할 때(라이브 서비스)시간대그대로 저장서버의 시간대로 저장범위1000-01-01 ~ 9999-12-311970-01-01 00:00:00 ~ 2038-01-19 03:14:07자동 업데이트X..

[TIL] Python 베이직 - 3회차

1. 함수란? 코드 재사용성, 가독성 향상, 유지보수 용이하여 함수를 사용한다.# 함수의 기본 구조def add(a, b): return a + b result = add(3, 5)print(result) # 출력: 8-----------------------------------------------------------------------------------------------# 입력이 없는 구조: 고정된 결괏값이나 특정 동작을 수행할 수 있다.def say(): return 'Hi' greeting = say()print(greeting) # 출력: Hi---------------------------------------------------------------..

[TIL] SQL 챌린지 - 3회차

1. 자료형- Python의 기본자료형 문자열, 숫자형, 리스트, 딕셔너리, 튜플- SQL의 기본자료형 문자열, 숫자형, 날짜 2. 숫자 자료형- 비트와 바이트 - 정수형 정수형 자료형은 AUTO_INCREMENT 제약조건을 이용하여 ID를 생성하는데 유용하다.구분범위저장크기특징 TINYINT Signed: -128 ~ 127Unsigned: 0 ~ 2551byte매우 작은 정수 값을 저장하며 메모리 사용 최소화 SMALLINT Signed: -32,768 ~ 32,767Unsigned: 0 ~ 65,5352bytes작은 정수 값 MEDIUMINT Signed: - 800만 ~ 800만Unsigned: 0 ~ 1600만3bytes중간 크기 정수 값 INT Signed: 약 - 20억 ~ 20억*Unsig..

[TIL] 데이터 시각화 - Matplotlib

1. 데이터 시각화의 목적- 데이터 시각화가 중요한 이유 분석된 결과에 따라 다양한 의사결정이 이루어지는데 이때, 전달하고자 하는 목적을 시각화된 자료와 함께 전달한다면 큰 설득력을 갖출 수 있다.- 데이터 시각화의 목적 1) 패턴 발견 및 이해 데이터 시각화는 데이터 내의 숨겨진 패턴을 발견하고 이해하는데 도움을 준다. 그래프나 차트를 통해 데이터의 특징을 시각적으로 파악할 수 있다.사례시각화시간에 따른 매출 추이 분석Line지역별 매출 비교 분석지도제품 카테고리별 매출 분석막대 그래프, 원형 차트고객 구매 패턴 분석히스토그램, Box Plot  2) 의사 결정 지원 시각화는 복잡한 데이터를 이해하고 결정을 내리는 데 도움을 준다. 시각화를 통해 정보를 명확하게 전달해서 의사 결정 과정을 지원한다.사례..

[TIL] SQL 챌린지 - 2회차

1. KEY- 관계형 데이터베이스 KEY 1) 식별자: 데이터베이스 설계 단계에서 사용하는 용어로 각 행을 고유하게 식별할 수 있는 모든 속성 혹은 속성 조합을 나타냄 2) 기본키: 각 행을 고유하게 식별하는 데 사용되는 선택된 식별자로 테이블 간의 관계(JOIN)를 기술하기 위해 사용구분설명특징 기본 키(Primary Key) 각 행을 고유하게 식별하게 사용되는 하나 이상의 컬럼한 테이블에는 하나의 키만 존재NULL 값을 가질 수 없음각 행에 고유한 값 외래 키(Foreign Key) 한 테이블의 컬럼이 다른 키의 기본키를 참조하는데 사용되는 컬럼부모 테이블의 기본 키와 동일제약조건을 통해 참조 무결성을 유지할 수 있음 2. 테이블 생성하기 (DDL) 데이블을 생성할 때 컬럼별로 제약조건을 설정할 수 ..