본문 바로가기
728x90

분류 전체보기74

[Programming][MySQL] 문자열 가공하기(Feat. 카카오 주가 데이터) 다양한 함수를 통해 문자열을 원하는 대로 가공할 수 있다. SUBSTR / SUBSTRING -- SUBSTR SELECT month, substr(month, 1, 3) AS Mon FROM kakao GROUP BY Mon; -- SUBSTRING SELECT month, substring(month, 1, 3) AS Mon FROM kakao GROUP BY Mon; SUBSTR 함수로 문자열의 원하는 부분만 출력할 수 있다. SUBSTR(출력할 열, 시작, 끝)의 형식으로 작성한다. 월을 영어로 기재할 때, 앞의 3글자만 작성하는 경우도 많으므로 month 열(Column)에서 첫 번째부터 세 번째 글자만 출력했다. SUBSTR / SUBSTING 모두 가능하다! 양쪽 결과 모두 동일하게 출력되었.. 2021. 7. 26.
[Programming][MySQL] IF/ CASE 조건 함수(Feat. 카카오 주가 데이터) IF SELECT date, fluctuation, IF(fluctuation LIKE '\-%', '하락', '상승') AS '구분' FROM kakao; IF는 조건을 만드는 함수이다. IF(조건식, 참, 거짓)의 형태로 작성한다. 변동률(fluctuation)에 따라 상승한 주(week)인지 하락한 주(week)인지 구분하고자 -가 붙은 경우 '하락', 거짓일 경우 '상승'으로 조건을 설정했다. 결과적으로, 마이너스(-) 일 때 하락과 그렇지 않을 때 '상승'으로 잘 구분되고 있다. CASE SELECT month, CASE WHEN month IN ('January', 'February', 'March') THEN '1 분기' WHEN month IN ('April', 'May', 'June') .. 2021. 7. 26.
[Programming][MySQL] NULL 값 다루기(Feat. 카카오 주가 데이터) NULL이란? NULL은 0 값이 아니다. 어떠한 숫자가 아닌 값이 없다, 값이 존재하지 않는다는 의미이다. NULL + 1 도 NULL이고, NULL * 100도 NULL이다. 즉, NULL에 어떠한 연산을 해도 NULL 값이 나온다. (연산 불가) NULL 값을 다루는 표현들을 해보기 위해 기존에 작성하던 kakao 데이터에서 NULL 값들을 임의로 가공했다. 1. NULL 값 조회하기 -- NULL 값 조회 SELECT * FROM kakao_null WHERE month IS NULL; -- NULL이 아닌 값 조회 SELECT * FROM kakao_null WHERE month IS NOT NULL; IS NULL은 NULL 값이 있는 열(Column)을 조회하라는 의미이다. month에 NU.. 2021. 7. 25.
[Programming][MySQL] 연산을 할 수 있는 다양한 함수(Feat. 카카오 주가 데이터) 집계 함수 (Aggregate Function) -- 개수 집계 함수(COUNT) SELECT COUNT(*) FROM kakao; -- 총 합 집계 함수(SUM) SELECT SUM(vloume) FROM kakao; COUNT는 개수를 세는 집계 함수이다. * 을 사용하여 전체 개수를 산출하는 쿼리를 입력한 결과 52개로 개수가 출력되었다. SUM은 합을 계산하는 집계 함수로, 1년 동안 전체 거래량의 합을 출력했다. -- 평균 집계 함수(AVG) SELECT AVG(close) FROM kakao; -- 표준편차 집계 함수(STD) SELECT STD(close) FROM kakao; AVG는 평균을 구하는 집계 함수이다. 종가(close)의 평균을 구한 결과 지난 1년 동안 카카오 주가의 평균은 .. 2021. 7. 25.
[Programming][MySQL] ORDER BY / GROUP BY / LIMIT(Feat. 카카오 주가 데이터) ORDER BY ORDER BY는 정렬을 해주는 예약어이다. WHERE 다음에 사용해주며, 오름차순(ASC) / 내림차순(DESC)으로 수행할 수 있다. 왼쪽과 같이 오름차순(ASC)을 설정하면 종가(Close)가 작은 값부터 산출되고, 오른쪽과 같이 내림차순(DESC)으로 설정하면 종가(Close)가 큰 값부터 정렬되어 산출된다. GROUP BY GROUP BY는 원하는 열들이나 조건들에 맞게 그룹을 지어주는 예약어이다. SELECT month FROM kakao GROUP BY month; -- 그룹별 평균 계산 SELECT month, AVG(close) FROM kakao GROUP BY month; 왼쪽과 같이 month를 GROUP BY 함수로 지정하면 각 그룹별로 묶인 상태로 출력된다. 이에.. 2021. 7. 24.
[Programming][MySQL] DATE (날짜/시간) 함수(Feat. 카카오 주가 데이터) 연/ 월/ 일 데이터 추출 연도(YEAR), 월(MONTH), 일(DAY) 함수를 이용하여 데이터를 가공할 수 있다. -- 연도(YEAR) 함수 SELECT * FROM kakao WHERE YEAR(date) = 2021; -- 월(MONTH)함수 SELECT * FROM kakao WHERE MONTH(date) = 5; -- 일(DAY) 함수 SELECT * FROM kakao WHERE DAY(date) BETWEEN 25 AND 31; 오늘 날짜/ 시간 구하기 오늘 날짜를 알고 싶을 때는 CURDATE(), 지금 시간을 구하고 싶을 때는 CURTIME()을 사용하면 된다. -- 오늘 날짜 SELECT CURDATE() -- 지금 시각 SELECT CURTIME() 월 말일 구하기 LAST_DAY.. 2021. 7. 24.
[Programming][MySQL] SQL 기본 문법(Feat. 카카오 주가 데이터) 들어가기 전에 - SQL 문이 하나일 경우는 상관없지만, 여러 개일 경우 끝에 세미콜론(;)을 적어야 한다. - 예약어(SQL을 실행할 때 내장되어 있는 키워드로 명령하는 언어)는 대문자로 작성하는 것을 권장한다. 1. 데이터 베이스 활성화 --앞으로 사용할 데이터 베이스 지정 USE data; SELECT * FROM kakao; -- Dot으로 테이블 선언 SELECT * FROM data.kakao; --SCHEMAS 클릭하여 활성화 시킨 후 바로 테이블 선언 SELECT * FROM kakao; 2. SELECT / FROM SELECT는 테이블에서 가지고 오고 싶은 정보를 선택한다는 의미로 열, 연산 값, 파생변수 등을 지정할 수 있다. * 은 모든 열을 조회한다는 의미로 왼쪽 그림과 같이 전체.. 2021. 7. 23.
[Programming][MySQL] Workbench로 데이터 Import하기(Feat. 카카오 주가 데이터) 실습에 사용할 목적으로 카카오 주간 주가 데이터(2020/07/21-2021/07/22 ) 데이터를 INVESTING.COM에서 추출하여 CSV 파일로 생성했다. 데이터 설명 데이터는 주 별 기준일(date), 종가(close), 오픈(open), 고가(high), 저가(low), 거래량(volume), 변동(fluctuation)으로 구성되어 있고, 고윳값 실습을 위해 name 변수와 TEXT 데이터를 위해 month 변수를 임의로 추가했다. Create Schemas 데이터 집합체인 스키마를 만들어 주기 위해 왼쪽 SCHEMAS 창에 마우스를 대고 우클릭하여 Create Schea.. 를 클릭한다. 스키마의 이름을 정하는 페이지가 나오는데, 원하는 이름을 설정한 후 Apply를 클릭한다. (data로.. 2021. 7. 22.
[Project] Arima Model을 이용한 주가 예측 분석 분석 동기 코로나 19 이후로 주식투자에 대한 열풍이 일어났다. 그러나, 작년(2020년) 주가 상승에 비해 횡보하는 시기가 길어지고, 미국 연방준비은행의 금리 인상과 테이퍼링 이슈로 향후 주가의 방향성에 대해 다양한 논의가 이루어지고 있다. 주가 데이터는 대표적인 시계열 자료라는 점과 ARIMA 모델로 실험하여 주식 가격을 예측한 논문을 착안하여 분석을 진행하였다. 분석 대상 논문은 Stock Price Prediction Using Arima Model(Supriti Khandelwal, Debasis Mohanty, International Journal of Marketing & Human Resource Research, 2021 April)을 참고하였다. 분석을 위해 2018년 06월 01일부.. 2021. 7. 18.
[Visualization][Basic] Bar Chart(막대 그래프) Bar Chart는 범주별 빈도를 파악할 때 사용하는 기본적인 그래프이다. Python Seaborn 모듈의 내장 데이터인 tips 데이터 셋을 활용하여 요일별 (day) 총금액(total_bill)과 빈도를 파악해 보기로 한다. import seaborn as sns import matplotlib.pyplot as plt df_tips = sns.load_dataset('tips') df_tips df_tips.day.unique() Day 변수는 4 종류의 범주로 나뉘어 있다. 각 범주를 기준으로 막대그래프를 표현해 보자. 1. Seaborn 모듈을 이용한 Bar Chart seaborn 모듈을 활용하여 요일별(day) 팁의 총금액(total_bill)을 비교해 보자. import seaborn a.. 2021. 7. 15.
반응형