반응형
8. Spotfire & Python 연동 활용 예제
8-1. 특정입력값이 일치하는 행의 다른 칼럼 값 가져오기
Spotfire에서는 특정 값을 참조하여 다른 값일 가져올 수 있도록 Join을 활용하거나 Relation을 활용하여 Drill-down을 하는 등 다양한 방법을 제공하고 있습니다. 그리고 Spotfire를 활용하여 데이터 분석하는 경우에는 데이터를 보고 특정값을 조건으로 다른 데이터를 보고자 할 경우 Filter를 활용할 수도 있습니다. 하지만 BI 성 장표를 Spotfire로 만들 경우 이런 기능들을 활용할 수가 없는데 예를 들면 코드와 코드값을 가진 테이블을 만들어 두고 특정 코드를 조회하거나 특정 코드명을 포함하는 데이터를 찾은 후 해당하는 행의 다른 값을 가져와서 조건으로 활용할 경우가 문제입니다.
사용자에게 관리자코드는 노출하지 않고 코드값으로 조회하여 이를 조건으로 다른테이블에 조건을 부여하여 값/차트 등을 노출할 경우 라고 보면 될 것 같습니다.
예제 데이터로 Baseball 데이터를 활용해서 진행해보겠습니다.
먼저 Text Area를 추가하여 조건값을 부여하는 입력폼을 만들고 조회하여 가져온 값을 출력할 수 있도록 Label을 추가하겠습니다.
그런 다음 Action Control을 추가하여 실행할 수 있는 버튼을 만듭니다.
from Spotfire.Dxp.Data import *
table = Document.Data.Tables["Baseball"]
keyColumn = table.Columns["Team"]
tarColumn = table.Columns["Player Name"]
result = ""
for i in range(0, table.RowCount):
if keyColumn.RowValues.GetValue(i).ValidValue == Document.Properties["test"]:
if result == "":
result = tarColumn.RowValues.GetValue(i).ValidValue
else:
result = result + "'" + tarColumn.RowValues.GetValue(i).ValidValue
Document.Properties["result"] = "'" + result + "'"
print(result)
여기까지 진행하면 다음과 같습니다.
Input field에 "Detroit"라고 입력한 후 Run을 클릭하면
선수들의 이름이 위와 같이 출력됩니다.
'Data Analysis > Spotfire' 카테고리의 다른 글
[TIBCO Spotfire] Python 활용 : 현재 Dxp 파일 안의 Data Table 모두 합치기 (5) | 2020.11.04 |
---|---|
[TIBCO Spotfire] Python 활용 예제 : 현재 Dxp 파일 안의 Data Table List 가져오기 (11) | 2020.10.27 |
[Spotfire] 증권DATA 수집/분석 - 4 (3) | 2020.06.24 |
[TIBCO Spotfire] R chart 연동하기 - Wordcloud (9) | 2020.01.08 |
[TIBCO Spotfire] Spotfire 고급 활용법 (5) | 2019.12.27 |
댓글