見出し画像

メルカリ 売れやすい時間帯・曜日の分析 Python

データ集計の例として、オンラインでの売上データを用いて売れやすい時間帯、曜日などについて集計する。今回の結果は実際のメルカリでの売上データを利用しているため、メルカリをやっている方は参考にしてもらえたらと思う。

よく売れてるタイミング

後半にグラフを載せているが、まずは売れやすそうなタイミングを列挙しておく。

・夜は20時台から23時台の間、朝なら10時台から12時台が売れやすい。

・火曜水曜木曜は売れにくい。

・意外と月曜の12時台が多め。

概ね予想通りではあるが、休日に入る人の多い金曜日の夕方以降から徐々に売れやすくなる傾向のように思う。経験上メルカリは出品直後が最も人の目に触れる機会が多いようなので、金曜の20時頃から見てもらえるように出品することで、効率良く売り上げを伸ばすことができそう。

データの処理

モジュールのインポート

import pandas as pd
import matplotlib.pyplot as plt
import datetime
import seaborn as sns

データ読み込み

pandasのデータフレームを利用して、メルカリの売上データから見れる「購入日時」のデータから、時間帯(hour)、曜日(weekdayname)、曜日時間帯(hourweekdayname)を判別して、その列を作成する。

saledata = pd.read_excel("購入日時データ")
saledata["購入日時"] = pd.to_datetime(saledata["購入日時"]) #
saledata["hour"] = saledata["購入日時"].dt.hour
saledata["weekdayname"] = saledata["購入日時"].dt.day_name()
saledata["hourweekdayname"] = saledata['weekdayname'] + saledata["購入日時"].dt.strftime("%H")
saledata.head()

日時別売り上げ数可視化

簡易的にグラフを見やすくするため、seabornのsetを使用する。

sns.set()
plt.figure(figsize=(8,5), dpi=100)
saledata['hour'].value_counts(dropna=False).plot.bar()
plt.xlabel("sales_hour")
plt.ylabel("numbers")
plt.show()

10時台の売れ行きが意外だった。夜中は想像通りさっぱりといった感じ。

日別売り上げ数可視化

plt.figure(figsize=(8,5), dpi=100)
saledata['weekdayname'].value_counts(dropna=False).plot.bar()
plt.xlabel("sales_dayname")
plt.ylabel("numbers")
plt.show() 

木曜の売り上げが渋い。日曜や月曜との差がかなり大きく、木曜の出品はちょっと損した気分になりそう。

曜日別売り上げ数可視化

plt.figure(figsize=(50,10), dpi=100)
saledata['hourweekdayname'].value_counts(dropna=False).plot.bar()
plt.xlabel("sales_hour")
plt.ylabel("numbers")
plt.show()

ここまで分類してしまうと母数が少なすぎて参考になるかわからないが試しに可視化。意外にも月曜の12時がトップに。土日悩んで月曜に購入というパターンの噂を聞いていたが、実際に結構ある様子。


この記事が気に入ったらサポートをしてみませんか?