'제로베이스 데이터스쿨'에서 Tableau에 대한 강의가 시작되었습니다. 최근 데이터 시각화에 대해 흥미가 커져가고 있었고, 특히 대시보드 작성 기술을 배우고자 하는 마음이 컸어서 강의과정이 재미있었씁니다.
Tableau를 처음 접하면서, 많은 새로운 개념들과 마주하게 되었습니다. 다소 혼란을 느꼈던 개념들을 제가 기존에 배운 SQL 지식을 바탕으로 이들을 해석하고 이해해 보려고 했습니다.
이번 포스트에서는 구글링을 통해 공부하고 정리한 결과, Tableau의 몇 가지 개념들 - 논리적 테이블, 물리적 테이블, 관계, 조인, 유니온 - 을 제게 조금 더 익숙한 SQL과 판다스와의 연관성을 통해 설명해보고자 합니다.
'테이블'이라는 용어는 데이터를 구성하는 기본 단위를 의미합니다. Tableau에서의 '논리적 테이블'과 '물리적 테이블'은 이러한 데이터 구성의 두 가지 측면을 나타냅니다.
물리적 테이블:
논리적 테이블:
SELECT
문으로 데이터를 조회하는 것과 유사합니다. Tableau에서는 이러한 논리적 테이블을 통해 다양한 데이터를 결합하고, 필요한 정보만을 추출하여 시각화할 수 있습니다.물리적 테이블은 데이터의 원천을 나타내며, 논리적 테이블은 분석 과정에서의 데이터 가공 및 조합의 결과를 의미합니다.
Tableau에서 '관계'를 설정하는 것은 두 데이터간의 연결을 의미합니다. 이는 SQL에서 외래 키를 사용하여 두 테이블 간의 관계를 맺는 것과 유사합니다. 그러나 중요한 차이점이 있는데, Tableau의 관계 설정은 데이터를 실제로 합치는 것이 아니라, 분석 시 어떻게 연관 지을 것인지를 정하는 것입니다.
예를 들어, 고객 테이블과 주문 테이블이 있을 때, 이 두 테이블 사이에 고객 ID를 기준으로 관계를 설정할 수 있습니다. 이 관계 설정은 SQL의 외래 키와 비슷한 논리적 연결을 제공하지만, 물리적으로 두 테이블을 합치지는 않습니다.
Tableau의 조인:
SQL의 조인:
JOIN
구문을 통해 두 테이블을 연결하고, 관련된 데이터를 하나의 결과 세트로 합칩니다.SELECT * FROM customers INNER JOIN orders ON customers.customer_id = orders.customer_id;
Tableau에서 조인을 사용하면, 물리적 테이블이 아닌 논리적 테이블을 기반으로 데이터를 결합할 수 있습니다.
Tableau에서 유니온은 두 개 이상의 데이터 세트를 수직적으로 결합하는 데 사용됩니다. 이는 판다스의 concat
함수를 사용하여 데이터프레임을 수직으로 합치는 것과 유사합니다.
Tableau의 유니온:
판다스의 concat
:
concat
함수를 사용하여 동일한 열 구조를 가진 여러 데이터프레임을 하나로 합칠 수 있습니다. pd.concat([df1, df2])
명령을 사용하여 두 데이터프레임을 수직으로 합칩니다.데이터 분석을 배우기 시작하면서부터 분석 결과를 대시보드로 표현해내고 싶다는 마음이 컸습니다. 드디어 대시보드 작성을 위한 BI 툴인 Tableau를 배우기 시작했습니다. 이번 포스트에서 다룬 논리적 테이블, 물리적 테이블, 관계, 조인, 유니온 등의 개념을 SQL과 비교해서 이해하고 조사한 대로 정리해 보았습니다.
앞으로는 Tableau를 통한 작성한 대시보드를 소개하는 포스트를 작성할 수 있도록 노력해 보겠습니다.