Python Pandas - Periodオブジェクトから年の四半期を取得する方法
PandasのPeriodオブジェクトから「年の四半期(クォーター)」の情報を取得するには、period.quarterプロパティを使用します。この記事では、実際のコード例を通じて、Periodオブジェクトから四半期を取得する手順をわかりやすく解説します。
必要なライブラリのインポート
まず、pandasをインポートします。
import pandas as pd
Periodオブジェクトとは
pandas.Periodは、特定の期間(時点)を表すオブジェクトです。日付や時刻のデータを期間として扱う際に便利で、年・月・日・時・分などの単位で期間を指定できます。
Periodオブジェクトの作成
ここでは、2つのPeriodオブジェクトを作成してみましょう。1つ目は文字列から、2つ目は頻度(freq)と各パラメータを明示的に指定して作成します。
period1 = pd.Period("2020-02-27 08:32:48")
period2 = pd.Period(freq="M", year=2021, month=8, day=16, hour=2, minute=35)Periodオブジェクトの表示
作成したPeriodオブジェクトをprint文で表示します。
print("Period1...\n", period1)
print("Period2...\n", period2)四半期の取得
quarterプロパティを使えば、各Periodオブジェクトが属する四半期を簡単に取得できます。
res1 = period1.quarter res2 = period2.quarter
四半期の区分は以下のように定義されています。
- 第1四半期:1月1日〜3月31日
- 第2四半期:4月1日〜6月30日
- 第3四半期:7月1日〜9月30日
- 第4四半期:10月1日〜12月31日
完全なコード例
以下に、これまでの手順をまとめた完全なサンプルコードを示します。
import pandas as pd
# pandas.Periodは期間を表すオブジェクト
# 2つのPeriodオブジェクトを作成
period1 = pd.Period("2020-02-27 08:32:48")
period2 = pd.Period(freq="M", year=2021, month=8, day=16, hour=2, minute=35)
# Periodオブジェクトを表示
print("Period1...\n", period1)
print("Period2...\n", period2)
# 各Periodオブジェクトから四半期を取得
res1 = period1.quarter
res2 = period2.quarter
# 四半期の区分は以下の通り:
# 第1四半期 = 1月1日〜3月31日
# 第2四半期 = 4月1日〜6月30日
# 第3四半期 = 7月1日〜9月30日
# 第4四半期 = 10月1日〜12月31日
print("\n1つ目のPeriodオブジェクトの四半期 ...\n", res1)
print("\n2つ目のPeriodオブジェクトの四半期...\n", res2)実行結果
上記のコードを実行すると、次のような出力が得られます。
Period1... 2020-02-27 08:32:48 Period2... 2021-08 1つ目のPeriodオブジェクトの四半期 ... 1 2つ目のPeriodオブジェクトの四半期... 3
解説
1つ目のPeriodオブジェクト「2020-02-27」は2月のため第1四半期(Q1)に該当し、結果は「1」となります。一方、2つ目のPeriodオブジェクトはfreq="M"(月単位)で2021年8月を指定しているため、第3四半期(Q3)に該当し、結果は「3」になります。
このように、quarterプロパティを使えば、Periodオブジェクトから簡単に四半期の数値を取得できます。四半期ごとの売上集計やレポート作成など、ビジネスデータ分析の場面で非常に役立つ機能です。
-
Python Pandas – Timedeltaオブジェクトから継続時間の合計秒数を取得する方法
Timedeltaオブジェクトから継続時間の合計秒数を取得するには、timedelta.total_seconds() メソッドを使用します。このメソッドは、Timedeltaが表す期間全体を秒単位の浮動小数点数(float)として返します。まず、必要なライブラリをインポートします。import pandas as pdTimeDeltaはPython標準のdatetimeライブラリにおけるtimedeltaとは異なる表現を持つデータ型です。ここでは、PandasのTimedeltaオブジェクトを作成します。timedelta = pd.Timedelta(2 days 11 hours 22
-
Python・PandasのTimestampオブジェクトから曜日を取得する方法
PandasのTimestampオブジェクトから曜日を取得するには、timestamp.weekday()メソッドを使用します。このメソッドは、対象の日付が何曜日に該当するかを数値で返してくれます。まずは、必要なライブラリをインポートしましょう。import pandas as pd import datetimeTimestampオブジェクトの作成次に、Pandasでタイムスタンプを設定し、Timestampオブジェクトを作成します。ここでは例として「2021年5月12日」を使用します。timestamp = pd.Timestamp(datetime.datetime(2021, 5, 1