본문 바로가기

Data Analysis120

[TIBCO Spotfire] Python 활용 : 현재 Dxp 파일 안의 Data Table 모두 합치기 Spotfire에서 기본 기능으로 동일한 칼럼을 가진 데이터 테이블을 하나의 테이블로 합칠 수는 있습니다. 그런데 만약 합쳐야 할 테이블이 수십개라면 그런 작업마저도 힘들 수 있죠. 아래의 예제를 이용해서 간단하게 클릭한번으로 여러개의 테이블을 합칠 수 있습니다. (Client Only) Sample Data 먼저 샘플테이블을 보면 Data Table 1~3까지 3개의 Data Table이 있습니다. 예제 소스에서 보시면 알겠지만 "Data Table"이라는 문자열이 포함된 Data Table만 선택하여 합치도록 작성했습니다. Python소스 from Spotfire.Dxp.Data import * from Spotfire.Dxp.Data.Import import DataTableDataSource de.. 2020. 11. 4.
[TIBCO Spotfire] Python 활용 예제 : 현재 Dxp 파일 안의 Data Table List 가져오기 안녕하세요 불탄오징어입니다. 위의 질문이 있어서 간단하게 포스팅을 해봤습니다. 알고보면 그렇게 어렵진 않아서 댓글로 답을 달려다가 댓글 가독성도 떨어지고 샘플 파일이 있으면 이해하시는데 도움이 될 것 같아서 아예 포스트를 작성했습니다. 무엇보다도 어떤 목적으로 사용하실지가 궁금하네요 :) Sample 파일 참조해주세요. 작성 버전은 TIBCO Spotfire V6.5 입니다. 소스는 다음과 같습니다. 소스에서 보면 Document.Data.Tables로 모든 Data Table을 가져오고 Name 객채로 각 테이블의 테이블 명을 추출합니다. # pkg import import Spotfire.Dxp.Data.DataTable # 현재 dxp 파일에 Load 된 모든 Data Table의 리스트를 가져옴 .. 2020. 10. 27.
[Python] 일원배치분산분석 (1-Way ANOVA) ANOVA 하면 학부 시절 실험계획법 시간 때 집중적으로 들었던 기억이 있습니다. 물론 수리통계학 시간이나 기초 통계학 시간 때도 훝고 지나갔던 기억이 있지만 실상 정확하게 용도나 활용에 대해 사용해본 것은 한참 뒤였네요. 그 쯤에서야 정확하게 이해를 했던 것 같습니다. 분산분석은 말 그대로 분산/변동을 분석합니다. 간단하게 집단간 변동(분산)과 집단내 변동(분산)의 비는 F분포를 따르기 때문에 이를 이용하여 가설 검정을 합니다. 이때 독립변인, 종속변인의 수에 따라서 일원배치분산분석, 이원배치 분산분석, 다원변량분산분석 등으로 구분하여 부릅니다. 일원배치분산분석(1-Way ANOVA) 일원배치분산분석은 종속변인이 1개, 독립변인도 하나인 경우입니다. 하나의 독립변인으로 구분되는 집단간 비교가 되므로 통.. 2020. 10. 13.
[TIBCO Spotfire] Python 활용 예제 - 특정 입력값이 일치하는 행의 다른 칼럼값 가져오기 8. Spotfire & Python 연동 활용 예제 8-1. 특정입력값이 일치하는 행의 다른 칼럼 값 가져오기 Spotfire에서는 특정 값을 참조하여 다른 값일 가져올 수 있도록 Join을 활용하거나 Relation을 활용하여 Drill-down을 하는 등 다양한 방법을 제공하고 있습니다. 그리고 Spotfire를 활용하여 데이터 분석하는 경우에는 데이터를 보고 특정값을 조건으로 다른 데이터를 보고자 할 경우 Filter를 활용할 수도 있습니다. 하지만 BI 성 장표를 Spotfire로 만들 경우 이런 기능들을 활용할 수가 없는데 예를 들면 코드와 코드값을 가진 테이블을 만들어 두고 특정 코드를 조회하거나 특정 코드명을 포함하는 데이터를 찾은 후 해당하는 행의 다른 값을 가져와서 조건으로 활용할 경우.. 2020. 9. 17.
[Python] 업무 자동화 - 2 : Python으로 Naver 이메일 보내기 전번 포스트에서는 간단하게 Python으로 메일을 보내는 예제를 진행했습니다. 이번에는 간단한 데이터를 표로 변환하여 메일을 보내봅니다. Python 코드 작성 # -*- coding:utf-8 -*- import pandas as pd import pyodbc import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText # Database 접속 conn = pyodbc.connect("DSN=[DSN]; uid=[데이터베이스접속계정]; pwd=[데이터베이스접속비번]") # 데이터를 가져올 쿼리 query = "SELECT DT, CLOSE_PRC, LOW_PRC FROM " \ "(" \.. 2020. 7. 29.
[Python] 업무자동화 - 1 : Python으로 Naver 이메일 보내기 데이터 분석 관련 업무를 하다보면 매일 모니터링해야할 지표가 있고 경우에 따라서는 팀내에 공유해야할 일들이 자주 있습니다. 간단한일이라도 쌓이면 시간을 소요하게 되고 반복적으로 해야할 공유 업무를 놓치거나 주요업무에 배분할 시간이 부족할 경우가 생깁니다. 저같은 경우는 Spotfire의 scheduled update 기능과 automation service를 이용해서 모니터링 화면을 만들고 이를 메일을 통해서 팀내 공유하도록 설정했습니다. 매일매일 주요 지표와 누적 진척 현황등을 공유하고 있는데 만약 Spotfire가 없다면 그리고 좀더 간단하고 쉽게 구성할 수 있는 방법이 없을지 찾아보던 중 Python을 통해서 이를 구현해보려합니다. 첫번째 단게로 Python을 통해 메일을 보내봅니다. 메일 설정 먼.. 2020. 7. 17.
[Spotfire] 증권DATA 수집/분석 - 4 그동안 분석을 하겠다고 꾸준히 R 소스를 돌려서 데이터를 수집하고 있는데 종목을 정해서 해야할 것 같습니다. 전 종목을 기준으로 수집하다보니 시간도 오래 걸리고 중간중간 끊기는 경우도 많구요. 데이터 모으기가 쉽지는 않네요. 이번 포스팅은 Spotfire로 대략적인 데이터를 확인해보고 모델링에 대한 계획을 세워서 정리해보려 합니다. 1) 데이터 load 먼저 Spotfire를 실행하고 Add Data Table을 열어 줍니다. 우측 상단에 Add - Others - databases를 선택합니다. Odbc Data Provider를 클릭하여 Database 연결 셋팅을 합니다. (https://bongury.tistory.com/302) 참조 위와 같이 Specify Tables and Columns 창.. 2020. 6. 24.
[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.