내가 까먹을까봐 만든 블로그

전체 글

Languages/JavaScript

[JavaScript] 자바스크립트의 전개 구문(spread syntax, ...)

React Native를 사용하다 스타일링을 위한 스크립트를 작성하는 도중 ...Platform이라는 구문을 발견하게 되었다. 기존에 사용하던 언어들에서 보지 못한 특이한 종류의 구문들이 JS에서는 종종 보이는 것 같다는 느낌이 든다. 우선 이 전개구문(spread syntax)은 이름 처럼 객체나 배열들을 전개하여 사용할 수 있도록 해주는 문법이다. 마치 파이썬에서 함수에 인자 값들을 받을 때 *args를 이용하여 여러 인자를 한 번에 받을 때 사용하는 것과 비슷한 구문이라는 생각이 든다. 하지만 파이썬에선 *만 있으면 뒤에는 *qwer과 같이 앞에 *만 있다면 뒤에 오는 문자는 사용자 마음대로 써도 무관하지만 자바스크립트에서는 ...을 사용해야 한다는 차이점이 있다. {...obj} [...arr] ..

Data Science/Statistics

[Python] VIF(Variance Inflation Factors)를 이용한 다중공선성(Multicollinearity) 판단

주요개념 VIF(Variance Inflation Factors) 다중공선성(Multicollinearity) 일반적으로 회귀분석은 독립 변수들을 선정하여야 한다. 이때 독립 변수 간 강한 상관관계가 나타나는 문제를 다중공선성문제(Multicollinearity)라고 한다. 이름에도 나와있듯 어떠한 독립 변수가 다른 독립 변수와 완전한 선형 독립이 아닌 경우를 말한다. 위의 그림처럼 독립 변수 n개를 이용하여 종속 변수 Y를 찾아내는 경우가 있다. 독립 변수들이 서로 상관관계가 높다면 결과를 도출하기 위한 데이터 분석 과정에서 부정적인 영향을 미치게 된다. 왜냐하면 독립 변수들의 영향력을 파악하여야 하는데 어떤 독립 변수 X1이 다른 독립 변수 X2에 영향을 미치고 있다면 우리가 원하는 "독립"된 변수가..

Languages/JavaScript

[JavaScript] 일급 객체인 함수의 선언 방식과 화살표 함수

일급 객체(First-class Object) JS에서 함수는 일급 객체(First-class Object)에 해당한다. 일급 객체란 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체를 가리킨다. 이에 대한 정의는 아래와 같다. 객체지향 프로그래밍에서 자주 언급되는 단어인데 파이썬에서도 해당 개념은 물론 있다만 익숙해진 후엔 인지하고 사용하지는 않았던 것 같다. 변수에 할당(assignment)할 수 있다. 다른 함수를 인자(argument)로 전달 받는다. 다른 함수의 결과로써 리턴될 수 있다. 함수 선언 방식 함수 객체는 위의 조건을 모두 충족시키므로 일급 객체라고 볼 수 있다. 일급 객체이므로 고차 함수를 만들 수 있고 콜백을 사용할 수 있다. 이러한 일급 객체인 함수를 선언하는 방법..

Languages/JavaScript

[JavaScript] 변수 선언 시 var, let, const의 차이

자바스크립트는 매니지드 언어(managed language)이다. 이는 개발자가 직접 메모리를 제어하지 못한다는 것을 뜻한다. 파이썬과 같이 직접 메모리 주소를 통해 값을 저장하고 참조할 필요가 없고 변수를 통해 안전하게 값에 접근이 가능하다. 여기서 ES6 이후부터 var, let, const로 변수를 선언할 수 있는데 각각의 차이점을 잘 알고 사용하는 것이 좋다. 1. var 변수 재선언 가능 함수 스코프(functional scope)로 호이스팅이 발생 2. let 변수 재선언 불가능 변수 재할당 가능 블록 스코프(block scope)로 호이스팅이 발생 3. const 변수 재선언 불가능 변수 재할당 불가능 블록 스코프(block scope)로 호이스팅이 발생 console.log(a); var ..

Languages/JavaScript

[JavaScript] 호이스팅(Hoisting)

호이스팅(Hoisting)이란 자바스크립트 인터프리터가 변수와 함수 안에 있는 선언들을 모두 해당 함수 유효 범위의 최상단에 선언하는 것을 말한다. 하지만 주의해야 할 점은 실제로 위치가 옮겨지는 것이 아니라 그렇게 된 것처럼 실행이 된다는 뜻이라는 것을 염두에 두어야 한다. 즉, 선언이 코드 실행보다 먼저 메모리에 저장되는 과정으로 인해 야기되는 현상이다. 변수가 생성되는 절차는 아래와 같다. 1단계: 선언 단계(Declaration phase) - 변수를 실행 컨텍스트의 변수 객체에 등록한다. - 이 변수 객체는 스코프가 참조하는 대상이 된다. 2단계: 초기화 단계(Initialization phase) - 변수 객체에 등록된 변수를 위한 공간을 메모리에 확보한다. - 이 단계에서 변수는 undefi..

Data Science/Statistics

[Python] 상관 분석(Correlation Analysis)과 상관 계수(Correlation Coefficient), 자기 상관 계수(Autocorrelation Coefficient)

상관 분석(Correlation Analysis) 또는 상관 관계 분석은 두 변수 간에 어떤 선형적 관계를 가지는지 분석하는 기법으로 상관계수를 이용하여 측정하는 것이다. A와 B가 positive correlation이란 사실은 알 수 있지만, A의 증가가 원인이 되어 B가 증가하는지, B가 증가하는 것이 원인이 되어 A가 증가하는지는 알 수 없다. 따라서 원인과 결과에 대한 분석이 필요하다면 상관분석이 아니라 회귀 분석(Regression Analysis)을 수행하여야 한다. 상관 도표, ACF, PACF 등에서 등장하는 단어인 자기 상관이라는 단어를 다시 한번 정리해보려 한다.ACF와 PACF에 관한 내용은 여기를 참조하면 된다. 상관 계수(Correlation Coefficient)상관 계수(Co..

AlienCoder
외부 저장소
loading