반응형

전체 글 343

[수학 리부트] 숫자의 기초

정수 정의 :자연수, 0, 자연수와 반대부호인 수를 의미 소수 : 자신과 1외에는 다른 약수가 없는 수 합성수 : 1과 자기 자신외의 약수가 있어서 약수들의 곱으로 나타낼 수 있는 수 소인수분해 : 소수인 약수(소인수)들의 곱셈 형태로 합성수 나타냄 에라토스테네스의 체 (Eratosthenes' sieve) 일정 범위까지의 수 중에서 소수만 골라낼때 사용 1. 찾을 범위까지의 수를 나열한 다음, 소수가 아닌 1을 지움 2. 1다음으로 큰 수인 2를 남기고 2의 배수를 모두 찾아서 지움 3. 그다음으로 큰 수이면서 지워지지 않은 3을 남겨두고 3의 배수를 모두 지움 4. 더이상 지울 것이 없을때까지 반복 공약수 : 두 수의 약수 중에서 서로 공통된 것 최대공약수(GCD, Greatest Common Div..

[수학 리부트] 논리의 기초

논리의 기초 명제 정의 : 참인지 거짓인지 판별할 수 있는 문장이나 수식 p,q,r같은 영문자로 표시 진리값 : 명제의 참 거짓 명제에도 기본적인 연산이 존재 (논리연산) 진리표 : 논리연산의 결과를 표 형태로 알아보기 위해 나타낸 것. 항진명제 : 항상 참인 명제 모순명제 : 항상 거짓이 되는 명제 부정 연산한 결과를 다시 부정 연산하면 원래 명제의 진리값으로 돌아감 드 모르간의 법칙(De Morgan's law) not (A or B)=(not A) and (not B) not (A and B)=(not A) or (not B) 항등원 : 논리합에는 F, 논리곱에는 T라는 항등원이 존재, 그러나 숫자와 다르게 자기 자신에 대한 논리합과 논리곱 연산은 다시 자신으로 돌라옴 논리 연산의 법칙 : 교환법칙..

[PostgreSQL] CSV File를 Table에 삽입(Import)하기.

PostgreSQL에서 CSV File를 Table에 삽입(Import)하기.CSV파일을 PostgreSQL에 삽입하는 방법은 다음과 같습니다.먼저 데이터를 다운로드합니다. 그리고 데이터를 넣을 데이블을 만들어줍니다.DROP TABLE IF EXISTS sale_data;CREATE TABLE sale_data ( order_id SERIAL, date DATE, category VARCHAR(50), itemcode integer, price integer, amount integer, Primary KEY(order_id)); 데이블을 만들어 준후 CSV파일을 IMPORT하는 방법은 PSQL을 이용하는 것과 PgAdmin 기능을 이용하는 2가지 방법이 있습니다. PSQL로 CSV파일 IM..

SQL & DB/PostgreSQL 2023.03.05

[PostgreSQL] 중복행 제거

PostgreSQL에서 중복을 제거하는 방법은 다음과 같습니다. 로직의 원리는 중복되지 않는 데이터의 id만을 필터링해서 해당 id가 아닌 id를 제거하는 로직입니다. 1. 중복 제거하고자 하는 컬럼들만 group by 해서 가장 앞의 id만 남기는 로직 DELETE FROM table_name WHERE id NOT IN ( SELECT MIN(id) FROM table_name GROUP BY column_name ); 2. 중복 제거하고자 하는 컬럼들을 기준으로 rank를 매긴 다음에, 가장 앞의 id만 남긴다. DELETE FROM table_name WHERE id IN ( SELECT T.id FROM ( SELECT id , ROW_NUMBER() OVER(PARTITION BY column..

SQL & DB/PostgreSQL 2023.02.18

[LTV] BTYD (Buy-till-you-Die) - Pareto / NBD

LTV (Life Time Value) LTV(또는 CLV)로 부르는 ‘고객 생애 가치’는 고객이 평생동안 기업에게 어느 정도의 가치를 가져다 주는지를 정량화한 지표. LTV는 확률 기반 모형으로 특정한 시점 t에서 고객마다 어느 정도의 생애 가치를 가지는지 측정 회사가 얼마나 수익성이 있을지 또는 신규 고객을 확보하기 위해 얼마나 많은 비용을 지출할 수 있는지를 이해하는 데 중요한 지표 BTYD BTYD(Buy Till You Die) 모델은 고객 평생 가치를 계산하기 위해 과거 거래 데이터에 확률적 모델을 적용 BYTD 모델은 다음과 같은 질문에 답을 해준다고 한다. 활성 고객은 몇 명인가 지금부터 N년 후에 얼마나 많은 고객이 활동중일까 어떤 고객이 이탈했나 고객은 미래에 회사에 얼마나 가치가 있을..

[회귀분석] 로지스틱 회귀분석(2) - 로지스틱 회귀식과 회귀계수 추정(최대 우도 추정법(MLE))

로짓을 활용하여 로지스틱 회귀식 도출성공확률에 대한 로그식을 선형회귀식으로 산출설명변수들이 주어졌을때 성공범주에 속할 확률을 구하기1/ 양쪽에 지수함수를 씌움2/ cross로 곱한다음 정리→ 성공확률의 식 회귀계수의 추정베르누이 분포로지스틱 회귀는 베르누이 시행(Bernoulli trial)을 전제로 하는 모델입니다. 베르누이 시행이란 어떤 실험이 두 가지 결과만을 가지는 실험을 가리킵니다. 베르누이 시행의 결과에 따라 0(실패) 또는 1(성공)의 값을 대응시키는 확률변수(random variable)를 베르누이 확률변수라 합니다. 이 확률변수의 확률분포를 베르누이 분포라고 합니다.     Likelihood는 각각의 객체들에 대해 정답 클래스로 분류될 확률 (모델 A의 glass1에서 likelihoo..

[회귀분석] 로지스틱 회귀분석(1) - 오즈와 로짓

로지스틱이 필요한 이유- 종속변수가 특이할 경우- 종속변수가 이항변수인 경우(변수가 가지는 값이 딱 2가지인 경우)OLS 회귀분석을 쓰면 안되는 이유예제 : 타이타닉, 독립변수 : survived, 종속변수 : pclassimport seaborn as snsimport statsmodels.api as smimport pandas as pdimport numpy as nptitanic = sns.load_dataset("titanic")model1 = sm.OLS.from_formula("survived ~ C(pclass)", data=titanic)result1 = model1.fit()print(result1.summary())1st class의 생존 예측 결과 : 0.62962nd class의 ..

[회귀분석] 다중선형회귀분석(2) - 다중선형회귀모형 개념/활용/검증

다중선형회귀분석 목적 : 정량적인 종속변수 Y와 여러가지 설명변수 X들의 사이에 선형관계식을 찾는것 다중선형회귀분석의 식 결합 계수(베타)들은 이미 정의가 되어 있음 그러나 앱실론 (노이즈)이 문제 (시스템이나 사람이 어찌할 수 없는 변동성을 노이즈라고 칭함) 따라서 다중선형회귀분석의 목적은 베타(회귀계수)들을 찾는것. 다중선형회귀분석의 2가지 유형 1. 설명적 회귀분석(explanatory regression) 설명변수와 종속변수의 관계를 설명하는 것이 목적 모델의 목적은 데이터를 잘 fitting하여, 설명변수가 종속변수에 얼마나 영향을 끼치는지 알아내는것 얼마나 모델이 잘 만들어졌는지는 R-squared로 판단 (+residual analysis(잔차분석) , p-values) 여기서 중요한것은 베..

[회귀분석] 다중선형회귀분석(1) - 다중선형회귀모형의 가정

다중회귀모형이란설명변수(독립변수)가 2 개 이상인 회귀모형을 분석대상으로하는 것.다중회귀모형은 분석내용을 향상시킬 수 있다는 장점이 있음추가적인 독립변수를 도입함으로써 오차항의 값을 줄일 수 있으며단순회귀분석의 단점을 극복종속변수를 설명하는 독립변수가 두개일 때 단순회귀모형을 적용하면, 모형설정이 부정확할 뿐 아니라 종속변수에 대한 중요한 설명변수(독립변수)를 누락함으로써 계수 추정량에 대해 편의(bias)가 생길 수 있다. 따라서 다중회귀분석을 통해 편의현상(bias)을 제거할 수 있다. 다중회귀모형의 식다중회귀모형의 식은 다음과 같다.여러개의 다중회귀모형 식을 아래와 같이 행렬로도 나타낼 수 있다. 다중회귀모형의 가정1. 회귀모형은 모수에 대해 선형인 모형이다. => Yi = β0 + β1 X1i +..

반응형