分析データを変換して Power BI レポートを生成する
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Power BI に Analytics データをインポートしたら、レポートを作成する前に選択列データの変換が必要になる場合があります。 この記事では、次のような基本的なタスクを実行する方法について説明します。
- [領域]、[AssignedTo]、[イテレーション] などの列を展開する
- リンクされた作業項目のクエリを実行するときに子孫列を展開する
- 選択したカテゴリの状態のカウントを生成するピボット列
- 列データ型を 10 進数から整数に変換する
- 列データの null 値を置き換える
- カスタム フィールドを作成する
- フィールドの名前を変更します。
列の展開
このクエリでは、Power BI で使用する前に展開する必要がある複数の列が返されます。 OData $expand ステートメントを使用して取り込 まれたエンティティは、潜在的に複数のフィールドを持つレコードを返します。 エンティティをフィールドにフラット化するには、レコードを展開する必要があります。 このようなエンティティの例として、AssignedTo、Iteration、Area があります。
詳細エディターを閉じた後、Power Query エディターでメインし直しながら、フラット化する必要があるエンティティの展開ボタンを選択します。
たとえば、[領域] の展開ボタンを選択し、展開するプロパティを選択して、[OK] を選択します。 ここでは、フラット化を選択
AreaName
しますAreaPath
。 このプロパティはAreaName
、[ノード名] フィールドに似ています。テーブルにエンティティ フィールドが含まれるようになりました。
展開が必要なエンティティを表すすべてのフィールドについて、手順 1 から 3 を繰り返します。 これらは、展開されていないときにテーブル列に表示されるレコードと共に表示されます。
[子孫] 列を展開する
Descendants 列には、State と TotalStoryPoints の 2 つのフィールドを含むテーブルが含まれています。 展開します。
[展開] ボタンを選択し、レポートする列を選択します。
すべての列を確認し、[OK] を選択 します。
Descendants エンティティは、選択した列にフラット化されます。
Pivot Descendants.StateCategory 列
1Descendants.StateCategory1 列ヘッダーを選択して選択します。
[変換] メニューを選択し、[列をピボット] を選択します。
[ピボット列] ダイアログで、[値] を選択
Descendants.TotalStoryPoints
し、[OK] を押します。 Power BI では、すべての StateCategory 値の列が作成されます。
[リンク] 列を展開する
列の展開ボタンを
Links
選択します。フラット化するすべてのフィールドを選択します。
列の展開ボタンを
Links.TargetWorkItem
選択し、フラット化するプロパティを選択します。
Note
リンクが一対多または多対多のリレーションシップを表している場合、複数のリンクが複数の行 (リンクごとに 1 行) に展開されます。
たとえば、作業項目 #1 が作業項目の #2 および #3 にリンクされている場合、リンク レコードを展開すると、作業項目 #1 に対して 2 行が作成されます。 1 つは作業項目 #2 へのリンクを表し、もう 1 つは作業項目 #3 へのリンクを表します。
列データ型を変換する
LeadTimeDays と CycleTimeDays を整数に変換する
LeadTimeDays
10 進フィールドと CycleTimeDays
10 進フィールドです。 たとえば、リード タイムが 10 日と 1/2 日の場合、値は 10.5 です。 ほとんどのリード/サイクル時間レポートでは、最も近い日に丸められたと見なされるため、これらのフィールドを整数に変換する必要があります。 この変換を行う場合、1 未満のすべての値が 0 に変換されます。
Power Query エディターで、リボンの [変換] メニューを選択します。
列ヘッダーを
LeadTimeDays
選択して列を選択します。[データ型] を選択し、[整数] に変更します。
を繰り返します
CycleTimeDays
。
CompletedDateSK を日付フィールドに変更する
列データはCompletedDateSK
、形式YYYYMMDD
の [完了日] フィールドの整数レンダリングに対応します。 たとえば、2022 年 7 月 1 日の整数値は20220701。 レポートを簡単にするために、日付フィールドに変更します。
Power Query エディターで、リボンの [変換] メニューを選択します。
列ヘッダーを
CompletedDateSK
選択します。[データ型] を選択し、[テキスト] に変更します。 [列の種類の変更] ダイアログが表示されたら、[現在のステップを置き換える] ではなく [新しいステップの追加] を選択します。 この 2 段階のプロセスは、Power BI で適切な日付フィールドに変更する最も簡単な方法です。
次に、もう一度 [日付の種類] を選択し、[日付] を選択します。 [列の種類の変更] ダイアログで、[新しいステップの追加] を選択します。
値を置き換える
1 つ以上のレコードに NULL 値が含まれている場合があります。 たとえば、ストーリー ポイントや Reメインing Work に値が入力されていない可能性があります。
レポートを簡単にするために、次の手順に従って null をゼロに置き換えます。
- 列ヘッダーをクリックして列を選択します。
- [変換] メニューを選択します。
- [値の置換] を選択 します。 [値の置換] ダイアログで、次の手順を 実行します。
- [検索する値] に 「null」と入力します。
- [置換後の文字列] に「0」と入力します。
- OK を選択します。
カスタム列を作成する
達成率の計算列を作成する
達成率列を追加する前に、ピボット状態列のすべての null 値を必ず置き換えてください。
[列の追加] メニューを選択します。
[カスタム列] を選択 します。
新しい列名に PercentComplete を入力します。
カスタム列の数式に次のように入力します。
= [Completed]/([Proposed]+[InProgress]+[Resolved]+[Completed])
Note
作業項目の状態が解決済みワークフロー状態カテゴリにマップされていない場合は、解決済み列がない可能性があります。 その場合は、上記の数式で "[解決済み]" を省略します。
OK をクリックします。
[変換] メニューを選択します。
[データ型] を選択し、[パーセンテージ] を選択します。
列フィールドの名前を変更する
展開が完了したら、1 つ以上の列の名前を変更できます。
列ヘッダーを右クリックし、[名前の変更]を選択 します。..
列フィールドの新しいラベルを入力し、Enter キーを押します。
クエリを閉じて変更を適用する
すべてのデータ変換が完了したら、[ホーム] メニューから [閉じる] & [適用] を選択してクエリを保存し、Power BI の [レポート] タブに戻ります。
関連記事
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示