カートから購入までの時間の中央値は、起点の選び方で低くなることもある
過去の店舗ログでは、同じ購入記録から異なる二つの中央値が得られました。同じ購入を固定した比較から、違いの理由が分かります。
REES46が公開した2019年11月の化粧品店イベントログから、記録上のユーザーと商品の組を独自に分析しました。
要旨
同じ購入記録を使った二つのレポートでも、カート操作から購入までの時間の中央値が異なることがあります。ある化粧品店の2019年11月のイベントログで、この違いを調べました。7 日以内の購入が対応付いた、記録上のユーザーと商品の193,397組では、最初に観測したカート操作からの中央値は44 分16 秒、その購入前の最後のカート操作からは36 分48 秒でした。どちらも同じ購入記録を終点にしています。
一方、82.4%の組では二つの計測時間が等しく、各組内で求めた差の中央値はゼロでした。全体の中央値同士の差である7 分28 秒は、一つの組に生じた典型的な変化を表しません。レポートを比較する事業者やクリエイターがまず確認すべきなのは、どの出来事を計測の起点にしたかです。この過去の単一店舗の事例は、報告上の定義を検討するもので、リマインダーや決済手順の変更を検証したものではありません。
小さなノート専門店が月次レポートを確認する場面を考えてみます。ある集計では、商品をカートに入れてから購入するまでの典型的な時間は約44 分、別の集計では約37 分とされています。店主が数値に添える説明を変える前に、分析担当者は基本的な点を確かめる必要があります。それぞれ、どのカート操作から計測を始めたのでしょうか。
記録上の同じユーザーIDと商品に対して、複数のカート操作が残ることがあります。最初に観測した操作を起点にすれば、その後のカート操作までの時間も含まれます。購入前の最後の操作から始めれば、それ以前の時間は含まれません。どちらの計算も正しくても、表している内容は異なります。
REES46が公開した化粧品店のイベントログで、この二つの定義を比較しました。記録上の各ユーザーと商品の購入を固定し、起点に使う購入前のカート操作だけを変えます。これにより、購入行動の変化とみなすことなく、二つの計測時間の差を求められます。[1][2]
商品を販売する事業者やクリエイターにとって役立つのは、レポートをどう説明し、比較するかという判断です。表示される中央値が変わったときは、店舗の成果について述べる前に、イベントの選択ルール、集計対象、観測期間を説明する必要があります。各組の対比較から、こうした詳細を数値のそばに示す理由が分かります。
二つの起点から、同じ終点へ

同じ購入記録から、異なる二つの中央値が得られた
比較対象は、購入を対応付けられたユーザーと商品の193,397組で、記録上のユーザーIDは23,692件です。各組には11月の最初の利用可能なカート操作と、その後7 日以内の購入記録があります。一人のユーザーが複数の商品に対応するため、組数は人数、カート数、注文数ではありません。
各組の最初の計測は、11月に観測した最も早いカート操作から始まります。もう一方は、同じ購入より厳密に前に起きた、最も遅いカート操作から始まります。ここでの「最初」は、この11月のファイル内で最初という意味で、商品に初めて関心を持った時点ではありません。終点となる購入は変えません。
三つの分布:最初の操作からの時間、最後の操作からの時間、各組内の差
2019年11月の化粧品店ログで購入を対応付けた、記録上のユーザーと商品の193,397組です。以下の時間の単位はすべて分です。
| パーセンタイル | 最初のカート操作から(分) | 最後のカート操作から(分) | 各組内の差(分) |
|---|---|---|---|
| 第10パーセンタイル | 5.52 | 4.60 | 0.00 |
| 第25パーセンタイル | 13.60 | 11.47 | 0.00 |
| 第50パーセンタイル(中央値) | 44.27 | 36.80 | 0.00 |
| 第75パーセンタイル | 676.92 | 404.70 | 0.00 |
| 第90パーセンタイル | 3,160.50 | 2,740.70 | 4.10 |
最初のカート操作からの中央値は2,656 秒、つまり44 分16 秒でした。最後のカート操作からは2,208 秒、つまり36 分48 秒でした。この二つの集計値を引くと、448 秒、すなわち7 分28 秒になります。
ところが、各組内の差の中央値はゼロでした。レポートの中央の値と、個々の記録の変化は別の集計です。続く節では、なぜこの二つの結果が両立するのかを説明します。
表では、二つの計測時間と各組内の差を別々の列にしています。各列は独立に順位付けされるため、同じ行が三つの分布すべてで同じ組を示すわけではありません。
対応付けた組の82.4%では、計測時間が等しかった
159,358組では、両方の計測が同じカート操作のタイムスタンプから始まり、差はゼロでした。これは対応付けた組の82.4%に当たります。二つの計測時間の中央値が異なる一方で、各組内の差の中央値がゼロとなる理由はここにあります。
残りの34,039組、17.6%には、固定した購入より前に、異なるカート操作のタイムスタンプが少なくとも二つありました。この小さい方の集団では、二つの計測時間の差の中央値は469 秒、つまり7 分49 秒でした。この条件付き中央値が表すのは34,039組であり、193,397組全体ではありません。
対応付けた組の大半は、同じ開始時刻だった
記録上のユーザーと商品の193,397組を共通の分母としています。件数と割合は組についてのもので、重複を除いた人数ではありません。
| 二つの計測の関係 | 記録上のユーザーと商品の組 | 対応付けた全組に占める割合 |
|---|---|---|
| 同じ時間:購入前の異なるカート操作時刻が一つ | 159,358 | 82.4% |
| 異なる時間:購入前の異なるカート操作時刻が少なくとも二つ | 34,039 | 17.6% |
この小さい集団を見つける二つの方法は同じ結果になります。購入前に異なるカート操作の時刻が複数あれば、最後の時刻は最初より遅いため、そこからの経過時間は短くなります。測定して得られる有用な情報は、その頻度と記録上の時間差の大きさです。差の方向自体は定義から決まります。
計測時間が等しいということは、同じカート操作のタイムスタンプを両方の起点に使ったという意味です。買い物履歴のすべての過程を表すわけではありません。カート操作が複数あっても、その目的は分かりません。元データには、操作の間に何が変わったかを説明する数量の項目がないためです。
大半の組が変わらなくても、中央値は変わり得る
小さな例で違いを確認します。架空のユーザーと商品の記録を3件用意し、時間の単位はすべて分とします。最初のカート操作からの時間は10、20、30です。最初の2件は、最後のカート操作からの時間も10、20のままです。残る記録だけは、後のカート操作を起点にすると5になります。
最初のレポートは10、20、30と並び、中央の値である中央値は20です。二つ目は5、10、20と並び、中央値は10です。変わったのは3件中1件だけですが、それだけで順位付けした列の中央に来る値が変わりました。
次に、各記録をそれ自身と比較します。差は0、0、25で、中央の値はゼロです。レポートの中央値同士の差は10ですが、各記録内の差の中央値はゼロです。どちらも、この架空の数値から直接導かれます。
店舗ログ全体の結果も同じ原理です。中央値は分布全体を要約し、各組内の差は購入ごとの比較を保ちます。小さい方の中央値を、典型的な購入が「速くなった」時間と読むと、この二つの問いを混同します。今回の分析では、購入の終点は一つも変えていません。
対応付けた組の4.5%で、レポートの時間区分が変わった
時間を要約する方法には、中央値のほかに区分別の集計もあります。ここでは、1 時間未満、1 時間以上1 日未満、1 日以上7 日以内という三つの固定した記述的区分を使いました。レポートの区分の例であり、メールなどの送信時刻を提案するものではありません。
起点を変えると、対応付けた8,749組が短い方の区分へ移りました。193,397組全体の4.5%です。そのうち3,841組は中間の区分から1 時間未満へ、3,020組は最も長い区分から1 時間未満へ、1,888組は最も長い区分から中間の区分へ移りました。
最初と最後のカート操作による時間区分の完全クロス集計
9通りすべてを示しています。「最初」と「最後」は起点にするカート操作を指し、終点の購入記録は固定しています。
| 最初の操作からの区分/最後の操作からの区分 | 記録上のユーザーと商品の組 | 対応付けた全組に占める割合 |
|---|---|---|
| 最初の操作から:1 時間未満/最後の操作から:1 時間未満 | 106,722 | 55.2% |
| 最初の操作から:1 時間未満/最後の操作から:1 時間以上1 日未満 | 0 | 0.0% |
| 最初の操作から:1 時間未満/最後の操作から:1 日以上7 日以内 | 0 | 0.0% |
| 最初の操作から:1 時間以上1 日未満/最後の操作から:1 時間未満 | 3,841 | 2.0% |
| 最初の操作から:1 時間以上1 日未満/最後の操作から:1 時間以上1 日未満 | 48,555 | 25.1% |
| 最初の操作から:1 時間以上1 日未満/最後の操作から:1 日以上7 日以内 | 0 | 0.0% |
| 最初の操作から:1 日以上7 日以内/最後の操作から:1 時間未満 | 3,020 | 1.6% |
| 最初の操作から:1 日以上7 日以内/最後の操作から:1 時間以上1 日未満 | 1,888 | 1.0% |
| 最初の操作から:1 日以上7 日以内/最後の操作から:1 日以上7 日以内 | 29,371 | 15.2% |
大半の組は同じ時間区分にとどまりました。実際の時間が変わっても、区分の境界を越えなかった組も含まれます。したがって、時間区分の表と計測時間が等しい組の表は、数値としての時間が変わったか、別の集団に分類されたかという異なる問いに答えます。
このクロス集計の割合は、すべて対応付けた193,397組全体を分母とします。たとえば、中間の区分から1 時間未満へ移った3,841組は、対応付けた組全体の2.0%です。中間の行の2.0%ではありません。共通の分母を明示すると、全体の比較と併せて表を読めます。
架空のノート購入一件を、二つの時間で表す
架空のノート店Paper Orchardを例にします。以下の時系列と報告書は作成した例であり、化粧品店の結果とは別です。3件のイベントすべてに、記録上の同じユーザーと商品の識別子が付いており、時刻はすべてUTCとします。
11月4日月曜日の09:00に、あるノートのカート操作が記録されます。11月5日火曜日の09:00には、同じユーザーIDで同じノートのカート操作が再び記録されます。11月5日火曜日の09:30に、購入イベントが記録されます。
最初のカート操作からは24 時間30 分、最後のカート操作からは30 分です。各組内の差は24 時間で、二つのカート操作のタイムスタンプの間隔と一致します。どちらの計算でも、購入は火曜日の09:30のままです。
この例はイベントに基づく計算を説明するもので、カートの履歴を与えるものではありません。ノートが一晩中カートに残っていたか、数量が変わったか、購入後に注文が履行されたかは分かりません。買い手についての物語で空白を埋めずに、二つの経過時間をレポートに示すことはできます。
架空の店舗に渡す、記入済みの報告書
Paper Orchardの分析担当者は、二つの時間について完成した説明を店主に渡せます。ここでは上のノートの一記録を使うため、説明するのはその購入であり、月次の中央値ではありません。
目的:同じノート購入について、2種類の時間の集計が異なる理由を説明します。店主は、キャンペーンの説明に使う前に、レポートを正確に説明する必要があります。
記録と期間:上に示した架空のユーザーとノートの一組で、期間は11月4–5日、UTCです。火曜日09:30の購入を固定します。この記録は、例で定めた7日間の追跡期間に収まります。それ以前の生涯履歴はありません。
起点となるイベント:一方を「最初に観測したカート操作からの時間」、もう一方を「同じ購入前の最後のカート操作からの時間」と表示します。分析担当者の元記録には、両方のタイムスタンプを残します。両方を単に「購入時間」と短くすると、意味の違いが見えなくなります。
計算済みの比較:最初のカート操作から24 時間30 分、最後のカート操作から30 分、各組内の差は24 時間です。レポートには「どちらも同じ購入記録を終点とします。異なるカート操作を起点に使っているため、時間に差があります」と記載できます。
店主による解釈:この説明を比較のそばに置きます。短い方の時間は、後に記録されたカート操作からの経過時間です。決済手順が改善したことや、ノートが一晩中カートに残り続けたことの証拠にはなりません。
次回のレポート:分析担当者は、選んだイベント名、UTCの時間基準、固定した追跡ルールを次の比較にも引き継ぎます。定義を変える場合、店主は主要な数値を比較する前にその変更を説明します。メッセージや販促の評価には、それ自体の証拠が必要です。
それぞれの計測時間と、各組内の差を分けて読む

購入を固定する
記録上の同じユーザーと商品の購入を、両方の計測の終点にします。
二つの起点を明示する
最初に観測したカート操作と、その購入より厳密に前に起きた最後のカート操作を比較します。
集計値を区別する
それぞれの計測時間の分布と、各組内で計算した差の分布を分けて読みます。
この報告書があれば、クリエイターや小規模店舗は、各時間の起点と終点を報告担当者と具体的に確認できます。商業的な説明は証拠が得られるまで保留しながらも、測った時間は明確に示せます。
レポートを比較するときは、イベントのルールを明示する
店舗と代理店が異なるレポートツールを使う場合や、新しいエクスポートで履歴の長さが変わった場合にも、同じ問題が起こり得ます。「カートから購入までの時間」という共通の名前だけでは、二つの数値の背後にある起点、購入の対応付け、観測期間が同じとは分かりません。
月次レポートを比較する店主にとって、これは傾向を説明する前に確認すべき点です。ある月は最初に観測したカート操作から、翌月は購入前の最後の操作から計測すると、時系列に2種類の定義が混ざります。数値の低下には、月ごとの他の違いに加えて、ルールの変更が反映される場合があります。今回の購入を固定した比較は、定義の違いだけを取り出したもので、月次の業績変化を測ってはいません。
ツールやエクスポートを変えた際は、引き継ぎ時に定義の変更を明示します。確認すべきなのは、従来と新しい集計が同じ内容を表しているかです。利用できる履歴も異なるなら、その違いを別に示します。「最初に観測したイベント」は、顧客の行動全体の始まりのように聞こえても、保存された履歴がどこから始まるかに左右されます。
分析ツールでも、ファネルへの流入やコンバージョンの対応付けに明確なルールがあります。たとえばAmplitudeは、セッションや遡及期間内の最初の流入を使うルールと、条件を満たすコンバージョン経路の選び方を説明しています。これらはレポートを読むための参考ですが、今回の2種類の時間の計算はAmplitudeのレポートを再現するものではありません。[3]
目的に応じて、定義を選ぶことはできます。最初に観測したカート操作からの時間は、その最初のイベント以降の記録上の長さを表します。購入前の最後のカート操作からの時間は、購入前に記録された直近のカート操作以降の長さです。報告上の問いに合う指標を選び、比較する際も意味を一定に保てます。
店主が実際に読むレポートの名前にも、この違いを反映する必要があります。「最初に観測したカート操作からの時間の中央値」と「購入前の最後のカート操作からの時間の中央値」は、異なる起点を伝えます。どちらも単に「購入時間」と呼ぶと、差を理解するための情報が失われます。対象集団と追跡期間も近くに示します。
分析を他者に任せているクリエイターや小規模事業者には、特に役立つ確認です。明確な定義を求めるために、店主が全イベントを調べる必要はありません。報告担当者は商業的な解釈を加える前に、どの起点、終点、対象記録から数値を得たのか説明できる必要があります。
今回の研究で裏付けられる解釈は限定的です。同じ購入記録でも、2種類の起点ルールで経過時間の集計が異なりました。商品ページ、販促、購入を促すメッセージが買い物体験を改善したかを判断するには、それぞれの変更について別の証拠が必要です。
各組で二つの時間をどう比較したか
公開された化粧品店データのバージョン6から、2019年11月のファイルを使いました。4,635,837行のイベントがあり、ラベルはview、cart、remove_from_cart、purchaseです。時刻はUTCで、11月のすべての日に記録がありました。これは提供されたファイルの範囲を示すもので、一人ひとりを連続して追跡した証拠ではありません。[1][2]
カート操作がある記録上のユーザーと商品の組は1,061,242組でした。11月の最初の利用可能なカート操作が11月1日から11月23日にあり、観測されたファイル末尾まで7 日間を確保できる組を残しました。11月のそれ以降に最初のカート操作があった270,024組は対象外です。日付条件を満たした組で、ファイル末尾までの期間が不足したものはありませんでした。
対象の791,218組のうち、193,397組は固定した期間内の後続の購入記録を曖昧さなく対応付けられました。残りの597,821組には、7 日以内の購入が対応付きませんでした。これらは観測された放棄カートではありません。購入が後になった、記録されなかった、別の識別子を使った可能性があります。時間の図表は、購入が対応付いた集団を条件としたもので、コンバージョン率やカート放棄率ではありません。
最初のカート操作と同時またはそれ以降に起きた最初の購入を、7日目の終点を含む期間内で選びました。購入が最初のカート操作と同時刻の場合、または別のカート操作が候補の購入と同時刻の場合は、後の購入で置き換えず、曖昧な組として除外するルールです。該当例はありませんでした。選択した項目がすべて同じ重複イベントは一つにまとめました。削除操作によって、仮定上のカート状態をリセットすることはしませんでした。
公開データには、カートID、注文ID、数量、返品状況がありません。同じログを使った先行研究では、プロセスマイニングによりセッションを分析し、カート状態を再構成しています。今回の計算は、ユーザーと商品の固定した購入一件について、観測した二つのイベント起点を比較するもので、買い物かごは再構成しません。[4]
結果を計算する前に、対象集団、期間、同時刻の場合のルール、記述用の時間区分を固定しました。パーセンタイルには線形補間を使っています。図表は対象記録を記述するもので、母集団の信頼区間や因果推論は含みません。ダウンロードには集計結果、正確な定義、再現用コードがあり、元のユーザーと商品の履歴は含みません。[5]
登録は不要です。共通のZIPには秒単位の集計結果と、英語の技術的な再現手順を収録しています。本文、計算例、記入済みの報告書、表示結果のCSVは、各言語版で利用できます。元のイベント行や、ユーザーと商品の履歴は含みません。
出典・注記
- Michael Kechinov, eCommerce Events History in Cosmetics Shop, Kaggleデータセット426888、バージョン6。対象ファイルは2019-Nov.csvです。作成者は中規模のオンライン化粧品店のデータで、イベント時刻はUTCと説明しています。データカードはKaggleとREES46へのリンクを条件に無料利用を認めています。データの著作権は原著作者に帰属し、集計はInfluence IQが行いました。
- REES46の公式データセット一覧は、2019年10月–2020年2月の化粧品店の行動データにリンクしています。本記事が使うのは2019年11月のファイルだけです。イベント記録であり、現在の店舗や消費者を代表する標本ではありません。
- Amplitude, How Amplitude computes conversions through funnels。流入、遡及期間やセッションの境界、条件を満たすコンバージョンの選択についての公式文書です。製品固有の定義を参考にしていますが、同等のAmplitudeレポートを検証したわけではありません。
- Bilal Topaloglu, Basar Oztaysi, Onur Dogan, Cart-State-Aware Discovery of E-Commerce Visitor Journeys with Process Mining, Journal of Theoretical and Applied Electronic Commerce Research 19(4), 2024, pp. 2851–2879, DOI 10.3390/jtaer19040138。同じイベントログを用い、セッションや行動経路の分析とカート状態の付加を検討した論文です。セッションを基準とする同論文の比較は、本記事の購入を固定した時間比較とは異なります。
- Influence IQ分析パッケージには、秒単位の正式な集計値、時間区分の完全なクロス集計、対象集団の内訳、定義、出典識別子、再現用コードを収録しています。元のイベント行や、ユーザーと商品の履歴は含みません。
すべての言語版が、同じ化粧品店の過去のログを説明しています。翻訳によって、別の国、市場、期間の推計値が得られるわけではありません。