【パワークエリ】時間の平均を求めて列に追加する方法|mm:ss.0形式にも対応

Excelの「パワークエリ」機能を使って、時間の平均を計算し、列として追加したいと思い、今回その方法を学習・実装しました。
特に、「mm:ss.0」といったユーザー定義形式のデータを対象に処理を行いたいケースにおいて有効な手法です。


目次

実現したい内容

  • 時間データが「mm:ss.0」形式で記録されている
  • このデータを秒に変換して平均値を求めたい
  • 平均値を新しい列として追加し、クエリ上で扱えるようにしたい

秒に変換する関数を定義する

Power Query(M言語)で、まずは時間文字列を数値(秒単位)に変換する関数を作成します。
以下がそのコードです。

let
    // 時間データを秒に変換する関数の定義
    ConvertTimeToSeconds = (timeText as text) as number =>
        let
            TimeParts = Text.Split(timeText, ":"),
            Minutes = Number.From(Text.Start(TimeParts{0}, 2)),
            SecondsAndMilliseconds = Text.Split(TimeParts{1}, "."),
            Seconds = Number.From(SecondsAndMilliseconds{0}),
            Milliseconds = if List.Count(SecondsAndMilliseconds) = 2 then Number.From(SecondsAndMilliseconds{1}) / 1000 else 0,
            TotalSeconds = Minutes * 60 + Seconds + Milliseconds
        in
            TotalSeconds
in
    ConvertTimeToSeconds

コードの解説

  • Text.Split(timeText, ":") で分を抽出
  • Text.Split(..., ".") で秒とミリ秒を分割
  • Number.From(...) で文字列を数値に変換
  • 分・秒・ミリ秒をすべて足し合わせて、1つの「秒数データ」に変換しています

平均値の計算と列への追加方法(概要)

この関数を定義した後、以下のような手順で処理を進めます。

  1. 元のテーブルに新しいカラムを追加
  2. ConvertTimeToSeconds([時間列]) を使って各行の秒数を算出
  3. カスタム列として追加された秒データの平均を取得
  4. 必要であれば、再度「mm:ss.0」形式へフォーマット変換も可能

※ 本記事では「関数定義」までを中心に扱っており、後続のステップについては別記事にて補足可能です。


まとめ

Power Queryを使えば、Excel上で「mm:ss.0」形式の時間データを秒単位に変換し、数値として扱う処理が可能です。
関数を定義してしまえば、以降は非常に柔軟な集計・平均処理が行えます。

  • カスタム関数で秒数に変換
  • 平均値や合計値も簡単に計算可能
  • 数値形式で扱うことで、統計処理やフィルタ処理の精度が向上

本記事の内容が、同様の作業に取り組む方の参考になれば幸いです。

副業から独立まで「稼げる」Webスキルを習得する(PR)

ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。

「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。

このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。

講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。

副業に特化した強み

  • 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
  • AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
  • 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。

受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。

受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。

ブログで稼ぎたいなら「メイカラ」


よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次