본문 바로가기
  • Fearless

분류 전체보기95

[SQL] (5) 와일드카드 문자 이전글들을 통해 특정 범위에 분포하거나 특정값과 일치하는 데이터 호출법을 배웠다. 이번엔 특정 문자열이 포함되어있는 데이터를 찾는 방법을 배워보자. 시작에 앞서, LIKE는 predicate(술어)이지 연산자가 아니다. 와일드카드 검색은 문자열에서만 사용할 수 있다. SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE 'Fish%'; %는 가장 많이 사용되는 와일드카드다. %는 임의의 수(0포함)의 문자가 올 수 있음을 뜻한다. WHERE 절을 활용하여 조건문을 형성할 수 있고, 이 경우 논리연산자가 아닌 LIKE 술어가 활용된다. prod_name이 "Fish"로 시작하는 데이터를 찾아서 반환해준다. 결과는 "Fish bean bag toy"였다.. 2022. 7. 12.
[SQL] (4) 고급 데이터 필터링 AND OR 등 논리연산자를 활용하여 WHERE 조건문을 강화한다. SELECT DISTINCT date, time, price FROM future.kospi200 WHERE date BETWEEN 20220301 AND 20220331 AND price < 360 LIMIT 10; AND를 활용하여 3월 한달간 price < 360인 데이터를 호출한다. SELECT DISTINCT date, time, price FROM future.kospi200 WHERE date BETWEEN 20220301 AND 20220331 OR price < 360 LIMIT 10; OR을 활용하면 3월 데이터이거나, price < 360인 데이터가 반환된다. 이 경우 2월 당시 price < 360이었기 때문에 해당.. 2022. 7. 11.
[SQL] (3) 데이터 필터링 WHERE 절을 활용하여 데이터 필터링을 진행한다. SELECT DISTINCT date, time, price FROM future.kospi200 WHERE price>360 LIMIT 10; 특정 column data에 대한 조건문을 설정해줌으로써 일부 데이터만을 호출한다. 논리연산자를 활용하여 값에 대한 조건식을 지정해준다. SELECT DISTINCT date, time, price FROM future.kospi200 WHERE date=20220302 ORDER BY price LIMIT 10; 2022/03/02의 데이터를 price 오름차순대로 호출한다. SELECT DISTINCT date, time, price FROM future.kospi200 WHERE price BETWEEN .. 2022. 7. 10.
[SQL] (2) 데이터 정렬하기 데이터가 DB에 삽입된 순서로 출력되기 때문에 데이터 변동이 있다면 순서가 바뀔 수 있다. 따라서 데이터 호출 시에 정렬 순서를 명시하여 원하는 순서대로 데이터를 받아볼 수 있다. SELECT price FROM future.kospi200 ORDER BY price LIMIT 10; price column을 오름차순으로 정렬한다. 이 때 LIMIT을 붙이면 전체 price 데이터 중 가장 작은 데이터 10개를 반환한다. SELECT DISTINCT date FROM future.kospi200 ORDER BY price LIMIT 10; 꼭 요청한 column에 대해서만 정렬할 수 있는건 아니다. 위 예시처럼 price가 가장 낮았던 날짜만을 요청할 수도 있다. SELECT DISTINCT date,t.. 2022. 7. 8.
[SQL] (1) 데이터 가져오기 1. SELECT SELECT price FROM future.kospi200; column name으로 데이터 호출 FROM 뒤에는 database이름 SELECT buy, sell FROM future.kospi200; 다중호출은 comma로 SELECT * FROM future.kospi200; *(wildcard) 사용시 전체호출 2. DISTINCT SELECT DISTINCT date FROM future.kospi200; 중복 제거한 데이터호출 SELECT DISTINCT date, time FROM future.kospi200; 마찬가지로 다중호출 SELECT price FROM future.kospi200 LIMIT 20; LIMIT 20은 상위 20개만 호출 SELECT DISTINCT.. 2022. 7. 7.
[이산수학] (13) Coloring & Poset G의 Crossing #은 G에 대한 모든 drawing 중 최소의 Crossing 이다. 이는 Chromatic Number라 부르며, Cr(G)로 표기한다. G가 Plannar이면 Cr(G)=0, 아니면 >=1 그림으로 Cr(G) 2022. 6. 14.
[이산수학] (12) Plannar edge가 교차되지 않고 그릴 수 있다면 G는 Plannar이다. Euler's Formula) G가 connected graph일 때, 교차되지 않은 형태의 그림을 고르자. 이 때 우린 |V(G)| - |E(G)| + |F(G)| = 2 의 식을 얻는다. pf) 만약 G가 connected graph이고 f=1인 crossing free 그림이 있다고 가정해보자. 이 때 G는 cycle이 없기 때문에(f=1이라서) G는 Tree다. Tree의 Prop에 의해 |E(G)| = |V(G)| - 1 이고, n-m+f = 1 + f = 2로 Euler's Formula가 f=1일 때 참이다. 수학적 귀납법으로 f=k일 때 Euler's Formula가 성립한다고 가정하고, f=k+1인 G를 다뤄보자. f=k+.. 2022. 6. 14.
[이산수학] (11) Coloring G의 K-coloring은 k가지 색상으로 vertices를 칠하는 경우를 뜻한다. def) 만약 uv in E(G)의 u,v가 f(u) != f(v)라면 G의 K-coloring은 proper하다. 즉 adjacent한 vertices의 색상이 다르면 proper coloring이다. prop) G가 V(G)=n인 그래프라면, proper n-coloring이 존재한다. pf) |V(G)| = n, V(G)={v1, ..., vn}, f:V(G) -> {1,...,n}일때, vivj in E(G)의 vi, vj가 f(vi) = i != j = f(vj)이기 때문에 n-coloring of G가 proper하다. G가 graph일 떄, G의 Chromatic #는 kai(G)라고 표기하고, kai(G) .. 2022. 6. 14.
[이산수학] (10) Tree & Spanning Tree G에 cycle이 없는 경우 G를 acyclic이라 부른다. 사이클은 처음과 마지막 vertices가 같되 중간 vertices는 중복되지 않는 walk를 뜻한다. 만약 acyclic하고 connected인 그래프라면 G는 Tree다. 아래와 같은 경우 connected가 아니거나, acyclic이 아닌 경우이기 때문에 Tree가 아니다. G가 connected graph일 때, 모든 G가 cut edge인 경우 G는 tree다. *cut edge : G-e 일 때 connected comp가 G일때보다 많아지면 e는 cut edge pf) prop) e는 cut edge이다. iff e가 cycle에 포함되지 않는다면 => : 만약 G가 tree라면, G는 acyclic이기 때문에 G에는 cycle이 .. 2022. 6. 14.
[이산수학] (9) Dirac's Thm Dirac's Thm: G가 |V(G)| = n >= 3 인 그래프일 때, del(G) >= n/2라면 G는 Hamiltonian이다. *del(G) : minimal degree of graph G pf) Thm이 틀렸다고 가정해보자. 그렇다면 del(G) >= n/2인데 G가 Hamiltonian이 아니란 뜻이다. 우선 G에서 가장 긴 length를 가진 Path를 하나 선정한다. u,v in V(G) s.t u is not adjacent to v인 u,v를 찾아보자. 이 경우 G+uv는 Hamiltonian이다. 이 뜻은 G+uv에는 Hamiltonian Cycle이 있다는 뜻이고, G에는 없었던게 uv를 추가하면서 생기는것이니 Cycle에 uv는 꼭 포함되어야만 한다. Bondy & Chvata.. 2022. 6. 14.
[이산수학] (8) Eulrian Graph Eulrian graph(한붓그리기) 시점과 종점이 같고, G의 모든 edge를 정확히 한번씩만 지나가는 walk를 Eulrian Tour라 부른다. 만약 G가 Eulrian Tour를 가진다면, G를 Eulrian이라 부른다. Euler Thm) G가 connected일 때, G는 Eulrian다 iff 모든 vertices가 짝수의 degree를 가진다면, Euler's Thm을 사용한다면 각 vertices의 degree가 모두 같은지만 check하면된다. 예시1) K5는 Eulrian, 예시2) K2,4는 complete bipartite graph인데, 잘 살피면 vertice 당 degree가 2 or 4이기 때문에 Eulrian이다. 예시3) G는 우선 connected graph가 아니다... 2022. 6. 13.
[ML심화] (n) Exponential Weighted Moving Average Moving Average는 크게 두가지로 나뉜다. 시계열데이터를 다룰 때 error term을 활용한 MA모형과, 주식시장에서 흔히들 많이사용하는 Moving Average(이동평균)이 바로 그것이다. Gaussian Process를 공부함에 있어 Moving Average를 짚고 넘어갈 필요가 있어 글을 작성해본다. 우리는 특정 시계열데이터의 추세를 파악하기 위해 이동평균을 활용한다. 가령 MA(5)의 경우 시점 t에서의 데이터와 t-4시점까지의 총 5개 데이터로 도출한 값이다. 이 때 이들 데이터는 전부 equally weighted되어 평균값이 산출된다. 만약 반영 데이터가 적다면 최근 추세를 어느정도 잘 설명할 수 있겠지만, 반영 데이터가 많아질수록 최근 추세에 대한 설명력이 약해진다. 가령 주.. 2022. 5. 28.
반응형