본문 바로가기

Data Analysis/R28

[R] 주식 DATA 수집/분석 - 3 이전에 주식종목 코드 하나에 대해서 주식 정보를 가져온 후 Database에 저장을 했습니다. 이번에는 여러 종목 코드를 가져와서 저장할 수 있도록 준비를 해보려고 합니다. 먼저 주식 종목 코드를 가져와야하는데 아래의 한국거래소에서 이미지에 표기 된 순서대로 이동을 하면 사장회사 검색화면을 띄울 수 있습니다. 한국거래소 한국거래소 www.krx.co.kr 상장회사검색 화면 우측에 보면 데이터를 다운로드 받을 수 있도록 excel, csv 형식으로 지원하고 있습니다. 일단 csv 파일로 해서 "c:/temp/"에 저장했습니다. 파일을 열어보면 종목코드, 기업명 외에 상장 주식수, 자본금등의 정보를 제공합니다. 문제는 구분자로 사용되어야할 ","(콤마) 가 숫자내에도 같이 들어있어서 난감합니다. 저 숫자 안.. 2020. 5. 27.
[R] 주식 DATA 수집/분석 - NAVER 주식 Data 가져오기 -2 이번에는 다량의 주식 데이터를 가져와서 Database에 저장해보겠습니다. 먼저 Database를 간단하게 만들어 봅니다. CREATE TABLE test..DD_STOCK_PRC ( CODEVARCHAR(6) NOT NULL ,DTDATE NOT NULL ,CLOSE_PRCINT NOT NULL ,DIFF_RTREAL NOT NULL ,OPEN_PRCINT NOT NULL ,HIGH_PRCINT NOT NULL ,LOW_PRCINT NOT NULL ,VOLUME_QTYINT NOT NULL ,PRIMARY KEY CLUSTERED (CODE, DT) ) 네이버 주식 데이터의 순서를 참조하여 주식코드, 일자, 종가, 전일비, 시가, 고가, 저가, 거래량 순으로 저장하는 구조입니다. 다음으로 저번과는 달리.. 2020. 5. 17.
[R] NAVER 주식 DATA 가져오기-1 오랜만에 해보는 R 공부? 입니다. 이번에 해볼 것은 R을 이용해서 NAVER 금융의 주식 데이터를 가져와보려합니다. 해당 주제는 여러분들이 공부해서 이미 많은 포스팅이 있지만 한번 독학으로 쭉 진행해보려합니다. 1) NAVER 금융 페이지 예시로 카카오 주식(035720)을 검색해서 페이지를 띄워보겠습니다. '시세'탭을 클릭해서 보면 아래와 같은 화면을 얻을 수 있습니다. 1-1) 개요 부분 현재가, 고가, 저가,거래량등 개요부분이 있고 아래 쪽으로는 주요시세, 시간별 시세, 일별 시세가 있습니다. 시간별 시세, 일별 시세는 페이지 구조로 구성되어 장기간의 데이터를 얻을 수 있는 구조로 되어있네요. 먼저 개요부분 html을 뜯어봅니다. 카카오 시세가 206,000원으로 되어있는데 이부분을 구조를 보면 .. 2020. 5. 7.
[R] Apply 함수를 알아보자 보통 apply 계열 함수라고 이야기 하는데 apply, tapply, lapply, mapply 등 apply 이름 앞에 영문자가 하나 붙는 형태로 구성이 됩니다. 보통 입력값과 출력값에 따라서 함수 종류가 달라지며 용도는 짧은 코드로 반복 명령 수행을 위해 사용합니다. 함수 설명 apply 주어진 데이터를 행 또는 열 기준으로 연산을 수행하는 함수 tapply 지정한 그룹(Factor) 기준으로 연산을 수행하는 함수 lapply 실행결과가 list 형태로 출력되는 함수 sapply lapply의 simple 버전 성능 for 문에 비해서 인지,가독성은 떨어질 수 있지만 apply 계열 함수를 이용하는 이유는 짧아지는 코드와 성능 때문이라고 합니다. 실제로 저도 특수한 경우를 제외하고는 apply 계열.. 2020. 4. 21.
[R] DAUM 영화 평점을 가져와서 분석하기 - 2 2016/02/23 - [Data Analysis/R] - [R] Daum 영화 평점을 가져와서 분석하기 - 1 구조가 파악이 됐으면 구조에 따라 필요한 정보를 가져와 추출한다. 그림에서와같이 Comment의 경우 밑에 있는데 이 경우 rvest의 html_node()를 활용하여 해당 부분을 추출할 수 있다. html_node('span.comment') 이를 이용하여 다음과 같이 스크립트를 구성할 수 있다. library(rvest) reviews 2016. 2. 23.
[R] Daum 영화 평점을 가져와서 분석하기 - 1 스크랩핑? 크로울링? 용어가 다소 생소하지만 웹상의 데이터를 가져오는 것을 스크래핑이라고 하는 것 같습니다. 정확한 용어는 찾아보고 다음에 정리해야지. 여튼 분석용 데이터를 구하기 위해서 웹상의 데이터를 많이 이용하는데 그중에 텍스트 데이터를 수집하기 위해서는 스크랩핑만한게 없는 것 같습니다. 보통 python을 이용을 많이 하는 것 같은데 본인은 R로 공부도 할겸 정리를 해봤습니다. 이용한 package는 rvest를 사용하여 Daum 영화 평점 및 Comment를 가져왔습니다. 웹상 데이터를 가져오기 위해서 해당 웹페이지에 대해 분석이 필요합니다. 먼저 현재 Daum 영화 평점 순위 페이지로 이동해 보면 다음과 같이 확인이 가능합니다. ==> 이동 여기서 녹색 부분의 평점과 코멘트가 필요한데 위의 부.. 2016. 2. 23.
[R] R 배치 프로그램 이것도 내가 찾고 싶을 때 찾아보게 기록해두는 간단한 팁. R을 이용해서 분석을 수행하고 알고리즘이 확정되면 배치를 통해 주기적으로 수행이 필요한데 보통 bat 파일을 생성한 후 이것을 윈도우 Job Scheduler에 등록하여 운영한다. (다른 사람들은 어찌할려나 'ㅅ'); 일단 간단한 R 코드는 다음과 같다. # configuration root.directory 2016. 1. 7.
R : Data.table 공부 R에서 여러 유용한 패키지가 많은데 Data.table을 단연코 최고가 아닐까 생각한다. 다만 기존 Data.frame과 달리 유용한 반면 사용법이 달라서 매번 까먹거나 헷갈리네... 조금 공부도 할경 정리도 할겸 포스트를 써보았다. 조금씩 추가하면서 정리해야겠다. library(data.table) # Data load dt 150 & Ozone < 20 ] dt[Ozone %between% c(11,14)] dt[test == "None"] dt[test %like% "^N"] dt[test %chin% "None"] # Join DT = data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9) setkey(DT, x) X = data.table(c(.. 2015. 12. 6.
R : Rfacebook 패키지 예전에 썼던 글에서는 Facebook의 API를 이용하여 post를 가지고 오고 이를 Parsing해서 wordcloud를 그렸었는데 Facebook에 대한 패키지가 있었네... 몰랐다니.. ㅠㅠ 유저정보를 가져오거나 친구에 대한 Network 가져오는듯 다양한 기능이 있다. 이번 포스트에서는 간단하게 이전에 만들었던 Script를 수정해볼려고 한다. 수정해놓고 Spotfire와 연동 예제도 만들어둬야겠다... access_token 2015. 4. 13.
R : Text Mining... KoNLP 패키지를 사용해서 단어 추출하고 추출된 단어 집합에서 연관성 분석을 해볼려고 했더니 R이 죽는다.!! Facebook에서 25포스트를 추출해서 분석했는데 체크를 해보니 메모리 부족.... 메모리 8GB로는 무리인건지..... 생각은 Spotfire와 연계하는 Dafa function을 3단계로 나눠서 아래와 같이 만들어볼려고 했는데....생각보다 메모리를 많이 쓴다는 점에서 고민이 커졋다.. 매우 커졌다.. 1) Facebook 데이터 추출 2) Post 정리 및 단어 추출 3) 연관성 분석 또는 Wordcloud 실행 2015. 2. 4.