파이썬에서 자기란 무엇인가: 실제 사례
파이썬에서 자기란 무엇인가: 실제 사례
이 자습서에서는 제10회 LuckyTemplates Challenge에 제출한 보고서에서 내가 가장 좋아하는 페이지 중 하나를 구성하는 방법에 대한 자세한 DAX 측정 분석을 보여드리겠습니다.
순위 페이지는 까다로운 DAX 측정을 많이 사용합니다. 그러나 LuckyTemplates 전문가 중 한 명인 Antriksh Sharma와 일부 측정 분기의 도움으로 원하는 결과를 얻을 수 있었습니다.
목차
랭킹 페이지 개요
DAX 측정 분석을 시작하기 전에 오늘 작업 중인 페이지의 여러 부분을 보여드리고 싶습니다.
랭킹 페이지는 이렇게 생겼습니다. 내 보고서의 다른 페이지와 달리 여기에는 대부분 카드가 포함되어 있습니다.
이러한 각 카드는 LuckyTemplates Desktop의 시각화 창 아래에 있는 기본 제공 카드 시각적 개체를 사용하여 만들어졌습니다.
여기 상단에 있는 아이콘을 통해 보고서의 다른 페이지로 다시 이동할 수 있습니다.
다른 자습서에서 이 보고서의 다른 페이지에 대해 논의했습니다. 이 보고서의 다른 페이지를 보면 이 순위 페이지 로 연결되는 아이콘도 있음을 알 수 있습니다 .
페이지의 왼쪽에는 전체 상위 4개 공장과 벤더가 표시되고 오른쪽에는 하위 4개가 표시됩니다.
또한 보다 구체적인 결과를 얻기 위해 개별 DAX 측정값을 만들었습니다. 예를 들어 위의 세 개는 가동 중지 시간(분) , 평균 가동 중지 시간(분 ) 및 결함을 기준으로 상위 4개 및 하위 4개의 공장과 공급업체를 보여줍니다 .
보고서 페이지 ��단에 더 구체적으로 설명했습니다. 왼쪽에는 가동 중지 시간(분), 평균 가동 중지 시간(분) 및 결함을 기준으로 상위 4개 공장과 하위 4개 공장이 있습니다.
오른쪽은 같은 작업을 했지만 이번에는 벤더 세부 정보를 기반으로 했습니다.
이 튜토리얼을 진행하면서 이 페이지에 대한 아이디어를 생각해낸 이야기를 들려드리겠습니다. 그런 다음 각 측정값이 생성된 방법에 대한 단계별 분석을 제공합니다.
사용할 DAX 측정값에 대한 아이디어 얻기
중 한 명인 Antriksh로부터 이 슬라이드의 DAX 측정에 대한 아이디어를 얻었습니다 . 그는 DAX 전문가이며 조치를 최적화하는 데 탁월합니다. 이 DAX 측정 분석에서 그와 함께 작업하는 것은 즐거웠습니다.
10회 LuckyTemplates Challenge가 발표되기 약 2주 전에 Skype에서 그가 LuckyTemplates 포럼에 게시한 PBIX 파일에 대해 대화를 나눴습니다.
보시다시피 Antriksh의 사진을 포함시켰습니다. 그가 여기에서 논의할 페이지 뒤에 있는 영감이었기 때문입니다. 나는 그에게 이 튜토리얼을 완료했을 때 공로를 인정하겠다고 말했습니다.
이 모델은 단순하며 고객, 제품 및 판매와 같은 일부 기본 데이터를 사용합니다.
왼쪽에 짧은 국가 목록이 있습니다.
Antriksh는 Top N Countries by Sales 에 대한 측정값을 만들었습니다 . 아래쪽 화살표로 표시된 대로 목록을 가장 높은 항목에서 가장 낮은 항목으로 정렬했습니다.
오른쪽에는 상위 4개 국가와 하위 4개 국가를 보여주는 카드가 있습니다. 상위 4개 목록에는 목록의 상위 4개와 일치하는 미국 , 호주 , 영국 및 독일이 표시됩니다.
그러나 하위 4개는 반대 순서로 나타나고 있습니다. 최하위인 아르메니아 가 아니라 5위인 키르기스스탄 에서 시작되었습니다 .
이것이 위에서 사용된 척도의 수정된 버전을 사용하는 또 다른 카드를 하단에 만든 이유입니다.
하단 4개는 이제 내가 원하는 순서인 Armenia , Thailand , Syria 및 Kyrgyzstan 과 일치합니다 .
이 카드 뒤에 있는 DAX 조치에 대해 살펴보겠습니다. 첫 번째 카드에 대해 Antriksh가 만든 측정부터 시작하겠습니다.
원래 측정값에는 첫 번째 카드에서 본 결과를 얻기 위해 97개 이상의 행이 있습니다.
20번째 행까지 아래로 스크롤하면 Antriksh가 ASC를 사용했음을 알 수 있습니다 . 그것이 하위 4명이 그렇게 나타난 이유입니다.
이제 문제가 어디서 시작되었는지 알았으므로 수정된 측정값이 어떻게 생겼는지 보여드리겠습니다.
두 번째 카드를 강조 표시하여 그 이면의 척도를 보여드리겠습니다.
보시다시피 수정된 수식에는 행이 41개뿐입니다.
Antriksh와 협력하여 원래 측정값보다 60% 또는 70% 축소했습니다. 덜 복잡할 뿐만 아니라 필요한 결과도 제공합니다. 상위 4개는 1일부터 4일까지, 하위 4개는 8일부터 5일까지입니다.
Antriksh와 논의한 지 몇 주 후에 제10회 LuckyTemplates Challenge가 시작되었습니다. 요구 사항 중 일부는 순위 시스템과 관련되어 있어 Antriksh의 DAX 측정을 다시 생각하게 만들었습니다. 측정값을 복사하여 붙여넣은 다음 측정값 분기를 적용하여 필요한 결과를 얻을 수 있다는 것을 깨달았습니다.
Dax 측정 분석: 측정 단계를 단계별로 구축
이제 내가 원하는 결과를 얻기 위해 순위 페이지에 사용한 측정값을 분석하겠습니다 . 이 DAX 측정 분석은 측정을 완료하는 데 필요한 행 수를 고려하여 측정이 어떻게 작동하는지 설명하는 데 도움이 될 수 있습니다.
다른 자습서에서는 측정값을 그룹화하여 항목을 보다 체계적으로 만드는 방법을 보여 주었습니다 . 그래서 Top N v2에 대한 하위 폴더를 만들었습니다.
이 폴더 내에는 Top N Plants Vendors Downtime Minutes(분) 에 대한 측정값이 있습니다 . 이전에 Antriksh의 조치를 논의하는 동안 보여드린 것과 동일한 41줄의 코드가 있음을 알 수 있습니다. 기본적으로 내가 해야 할 일은 내가 원하는 결과를 얻기 위해 일부 항목을 교체하는 것뿐이었습니다.
이것을 더 잘 분석하기 위해 이 전체 측정을 9개의 다른 부분으로 나누었습니다. 1단계부터 9단계까지 각 단계를 살펴보고 각 단계가 수행하는 작업을 설명하겠습니다.
측정은 더 명확한 결과를 얻을 수 있도록 여러 변수를 사용합니다. 이러한 변수를 설정하면 최종 사용자가 측정값이 어떻게 결합되는지 확인하고 각 결과를 얻은 방법에 대한 세부 정보를 설명하는 데 도움이 됩니다.
설정하는 첫 번째 단계부터 시작하겠습니다 .
이 BaseTable에서 Plant Location 및 Vendor 에 대한 데이터를 참조하고 있음을 알 수 있습니다 .
PBIX 파일로 돌아가면 Plants와 Vendors를 모두 참조하는 맨 위 카드가 표시됩니다. 이것이 내가 여기에서 모든 데이터가 필요한 이유입니다. 카드가 더 아래에 있는 것과는 반대로 다운타임 분 동안이지만 공장 위치 데이터만 사용합니다.
첫 번째 단계는 간단하므로 두 번째 단계로 넘어가겠습니다.
기능 으로 시작합니다 .
이 함수는 1단계에서 생성한 변수 와 가동 중지 시간(분)을 참조합니다 .
및 기능을 결합하여 값이 표시되도록 합니다 . 또한 결과가 0보다 크거나 같기를 원합니다. 이는 이 보고서에 사용된 데이터 세트에 플랜트 또는 공급업체가 비어 있는 일부 조합이 포함되어 있기 때문입니다. 값이 0인 항목도 있습니다.
세 번째 단계는 N 값으로 시작하는 또 다른 변수 세트를 포함합니다.
여기서 N은 4와 같습니다. 상위 4개와 하위 4개가 나타나기를 원하기 때문입니다.
또한 Top & N에 대한 접두어와 대시를 설정합니다.
종합하면 예상 결과를 열거하기 전에 해당 카드가 시작되는 방식인 "Top 4 -"를 표시하려고 합니다.
이제 네 번째 단계로 가보겠습니다. 여기에서 예상되는 결과가 나오기 시작합니다.
이 경우 사용하는 것에 대해 생각하는 사람도 있을 것입니다 . 결국, 나는 항목의 순위를 매기고 최고의 결과를 얻으려고 노력하고 있습니다. 그러나 Antriksh와 저는 ASC 순서 에서 상위 4개만 필요하기 때문에 이 경우에 더 적합하다고 느꼈습니다 .
다음으로 플랜트 위치 데이터를 사용하는 기능을 사용했습니다 .
또한 목록을 표시할 형식을 설정합니다. 그렇기 때문에 백슬래시와 쉼표, 그리고 공백을 나타내는 따옴표가 있는 것을 볼 수 있습니다. 또한 ASC 순서 로 설정되어 있으므로 PBIX 파일로 돌아가면 결과 사이에 백슬래시와 쉼표가 있는 상위 4개의 목록이 표시됩니다.
The fifth step of the measure starts by replacing the last comma on the list with an And.
When you go back to the slide, you’ll see that the last entry does have an “and” before the vendor and plant location.
This is what’s being accomplished in step five. It’s creating a list and using the function for the LastCommaPosition.
Notice that this says that N is greater than 2. This means that the substitution happens after the 3rd string.
The sixth step will look familiar because it basically copies the same thing I did on top to start the list with “Top 4 -“.
The only difference here is that I want it to show up as “Bottom 4 -” instead of “Top 4 -“.
The part I previously discussed about using is once again used here at the bottom, but now I’m calling the variable BottomData instead of TopData. Again, this part inserts the backslash and comma in between the names of the plants and vendors.
When we look back at Antriksh’s original measure, this is also the same part where he used ASC, which resulted in the list coming out not as I expected. That’s why I’m using DESC here instead.
So basically, at this point onwards, most of it is just copied and pasted from the earlier parts of the measure. I’m just replacing the word “Top” with “Bottom” in most cases.
For step 8, I want to change the last comma with the word And.
The ninth step wraps up this measure.
This uses the function with the number 10. This ensures that the Top 4 and the Bottom 4 are showing up on separate lines. Think about it as the return key on your keyboard. It makes you go down to the next row so that the top and bottom four don’t show up on a single line.
Verifying The Results
Antriksh and I were able to trim down the original 90 plus rows of DAX into 41 lines. However, 41 lines might still be a lot for some users. Breaking down that measure the way we did was a great way to understand why the measure had to be written that way.
각 단계가 무엇인지 설명했으므로 이제 해당 조치가 실제로 해야 할 일을 하는지 확인할 차례입니다. 순위 페이지 로 이동하여 보고서의 다른 부분에서 결과를 확인하겠습니다.
Plants/Vendors By Downtime Minutes 부터 시작하겠습니다 .
이것은 New Britain의 Linktype, Frazer의 Flashpoint, Twin Rocks의 Quinu 및 Henning의 Layo로 상위 4개를 보여줍니다. 하위 4개는 미들타운의 위키도가 전체적으로 최악인 것으로 나타났습니다.
이제 Vendors and Plants Combined 페이지로 이동하여 결과가 일치하는지 확인하겠습니다.
Rank By Downtime Minutes 열을 위에서 아래로 정렬하면 상위 4개 항목에 대해 올바른 결과가 표시됩니다 .
그러나 여러분 중 일부는 New Britain이 순위 페이지 카드 맨 위에 표시될 때 왜 이 목록에서 두 번째로 표시되는지 궁금할 것입니다 .
순위는 3개 항목을 상위 1위로 표시합니다. 이러한 항목은 RANKX를 사용하여 순위가 매겨졌습니다.
그러나 Downtime Minutes 열을 보면 New Britain은 0으로 표시되고 Frazer와 Twin Rocks는 각각 1로 표시됩니다. 그렇기 때문에 Rankings 페이지의 카드에서 New Britain은 여전히 Frazer와 Twin Rocks 위에 나왔습니다. 모두 1위를 차지하더라도.
이제 아래 4개가 맞는지 확인해 봅시다. Rank By Downtime Minutes를 내림차순으로 정렬하면 됩니다 .
보시다시피 Middletown, Waldoboro, Barling 및 Chesaning이 카드의 하위 4개로 표시됩니다. 이는 작동 중지 시간(분)별 플랜트/공급업체 에 대한 측정이 정확함을 의미합니다.
이제 Plants By Downtime Minutes 카드를 살펴보겠습니다 .
이것은 상위 4개가 Reading, Middletown, Waldoboro 및 Clarksville임을 보여줍니다. 하위 4개는 Riverside, Charles City, Twin Rocks 및 Chesaning입니다.
이 결과를 확인하기 위해 Plants 페이지에서 결과가 일치하는지 확인하겠습니다. 여기에서 가장 큰 차이점은 이전에 검증한 카드는 Plants 및 Vendors 데이터를 모두 기반으로 한 반면 이 카드는 Plants 데이터만 확인한다는 것입니다.
가동 중지 시간(분)별로 순위를 위에서 아래로 정렬하면 상위 4개가 Reading, Middletown, Waldoboro 및 Clarksville임을 보여줍니다.
이제 이번에는 순위를 뒤집어 하위 4개가 일치하는지 확인하겠습니다. 목록에 있는 30개 식물 중에서 Riverside, Charles City, Twin Rocks 및 Chesaning이 최하위 순위를 차지하는 것을 볼 수 있습니다.
이는 우리가 식물에 대해 올바른 결과를 보고 있음을 의미합니다.
이번에는 Vendors By Defects 의 순위를 매기는 카드를 살펴보겠습니다 .
이번에는 Vendors 페이지 로 가서 Dablist가 1위 벤더이고 Yombu가 불량 기준으로 최악인지 알아보겠습니다.
공급업체를 최고에서 최악으로 정렬하면 상위 4개가 순위 페이지 의 카드와 일치하는 것처럼 보입니다 .
순위를 최악에서 최고로 바꾸고 하위 4개도 일치하는지 확인하겠습니다.
카드의 하위 4개 목록에 포함된 다른 3개와 함께 Yombu가 실제로 최악임을 알 수 있습니다.
Dax 측정 분석: 측정 분기 적용
우리가 이전에 수행한 DAX 측정 분석은 Plants/Vendors By Downtime Minutes 이면의 측정만 살펴보았습니다 . 하지만 다른 카드의 소절은 어떻게 작업했습니까? 이것은 측정 분기가 들어오는 곳입니다.
측정 분기에는 기존 측정을 사용하여 다른 결과를 도출하는 작업이 포함됩니다.
이 보고서에서는 앞에서 논의한 조치를 복사하여 붙여넣고 필요한 요소에 맞게 일부 요소를 변경했습니다.
측정값의 이름은 분명히 내가 변경하려는 첫 번째 사항입니다. 하지만 그 이상으로 내가 참조하는 데이터도 변경해야 합니다. 예를 들어 원래 측정에 공장 위치 와 공급업체 데이터를 모두 사용했습니다 .
그러나 Plants By Downtime Minutes 에 대해 동일한 측정을 사용하려는 경우 Vendor 데이터를 제거하고 Plant Location에만 집중해야 합니다.
CONCATENATEX를 사용했을 때와 같이 두 데이터 세트를 모두 참조하는 동일한 측정의 다른 모든 부분에 대해 변경해야 합니다 .
가동 중지 시간(분) 도 마찬가지입니다 . Average Downtime Minutes 또는 Defects 를 확인하는 카드에서 작업하려면 이 부분을 변경하기만 하면 됩니다.
측정에서 "@DowntimeMins"라고 표시된 부분은 내 결함 또는 내 평균 가동 중지 시간(분)을 참조하더라도 그대로 유지하는 것이 나쁠 것 없습니다.
그러나 당신이 어떤 순서로 물건을 보관하는 것을 좋아하는 유형이라면 이것 역시 들어가서 변경할 수 있습니다. 이것을 변경하면 페이지 전체에서 변경해야 한다는 점을 기억하십시오. 이는 동일한 결과를 위해 추가 노력을 기울이는 것을 의미합니다.
측정 분기를 사용하여 얼마나 많은 시간을 절약했는지 상상할 수 있습니다 . 이렇게 하면 내가 작업하는 보고서의 모든 부분에 대해 새 측정값을 계속 만들지 않아도 됩니다. 보고 싶은 결과에 따라 기존 측정을 조정하기만 하면 보고서 개발 시간이 크게 단축됩니다.
내가 어떻게 했는지 보여주기 위해 Vendors By Downtime Minutes를 살펴보겠습니다 .
측정값을 가져오면 Plants / Vendors By Downtime Minutes 와 동일한 41개의 행이 있음을 알 수 있습니다 .
그러나 1단계에서는 Vendor 데이터만 참조하고 Plant Location을 제거했습니다.
해당되는 다른 곳의 데이터도 변경했습니다.
이것이 내가 결과를 기반으로 하는 것이므로 다운타임 분을 유지했습니다 .
따라서 이는 보고서의 다른 영역에 적용할 수 있도록 측정값에 대한 빠른 수정입니다.
여기서 또 다른 예를 보여드리겠습니다. 이번에는 Vendors By Defects 를 살펴보겠습니다 .
다시 한 번 여기서는 공급업체만 살펴보겠습니다.
내가 여기서 변경한 것은 Downtime Minutes 에 대한 참조입니다 . 대신 결함을 사용했습니다 .
또한 다른 행이 여전히 Vendor의 데이터를 사용하고 있는지 확인했습니다.
측정 분기를 사용하는 LuckyTemplates의 DAX 측정
보고서에 DAX 측정 그룹 구현 - LuckyTemplates 모델링 검토 순위
지정 DAX 측정을 사용하여 LuckyTemplates에서 고유한 인사이트 추출
결론
그것은 Antriksh의 강력한 DAX 작업이었습니다. 그것으로 작업하고 , 분기하고 , 보고서의 다른 부분에 적용하는 것이 정말 즐거웠습니다 .
우리가 수행한 심층 DAX 측정 분석은 프로세스의 모든 측면을 이해하는 좋은 방법이기도 했습니다. 긴 측정값에 대한 작업은 처음에는 어려워 보일 수 있지만 이와 같은 철저한 DAX 측정값 분석은 문제를 해결하는 데 도움이 될 수 있습니다.
이 페이지에서 작업하면서 여기 LuckyTemplates에 있는 것과 같은 협업 커뮤니티를 갖는 것의 중요성도 강조했습니다. 모든 사람들이 Antriksh와 같은 사람들뿐만 아니라 몇 가지 팁과 요령을 가지고 있는 다른 구성원 및 전문가와 함께 일할 수 있는 기회를 갖게 되어 기쁩니다.
모두 제일 좋다,
자렛
파이썬에서 자기란 무엇인가: 실제 사례
R의 .rds 파일에서 개체를 저장하고 로드하는 방법을 배웁니다. 이 블로그에서는 R에서 LuckyTemplates로 개체를 가져오는 방법도 다룹니다.
이 DAX 코딩 언어 자습서에서는 GENERATE 함수를 사용하는 방법과 측정값 제목을 동적으로 변경하는 방법을 알아봅니다.
이 자습서에서는 다중 스레드 동적 시각적 개체 기술을 사용하여 보고서의 동적 데이터 시각화에서 통찰력을 만드는 방법을 다룹니다.
이 기사에서는 필터 컨텍스트를 살펴보겠습니다. 필터 컨텍스트는 모든 LuckyTemplates 사용자가 처음에 배워야 하는 주요 주제 중 하나입니다.
LuckyTemplates Apps 온라인 서비스가 다양한 소스에서 생성된 다양한 보고서 및 인사이트를 관리하는 데 어떻게 도움이 되는지 보여주고 싶습니다.
LuckyTemplates에서 측정 분기 및 DAX 수식 결합과 같은 기술을 사용하여 수익 마진 변경을 해결하는 방법을 알아봅니다.
이 자습서에서는 데이터 캐시의 구체화 아이디어와 결과 제공 시 DAX 성능에 미치는 영향에 대해 설명합니다.
지금까지 Excel을 계속 사용하고 있다면 지금이 비즈니스 보고 요구 사항에 LuckyTemplates를 사용하기 시작하는 가장 좋은 시기입니다.
LuckyTemplates 게이트웨이란? 당신이 알아야 할 모든 것