Python Pandas入門:PeriodIndexオブジェクトから月番号を取得する方法
PandasのPeriodIndexオブジェクトから各期間の「月番号」を取得するには、PeriodIndex.monthプロパティを使用します。このプロパティは、1月を1、2月を2、…、12月を12として表す整数のインデックスを返します。
必要なライブラリのインポート
まず、pandasライブラリをインポートします。
import pandas as pd
PeriodIndexオブジェクトの作成
次に、日時データのリストからPeriodIndexオブジェクトを作成します。freqパラメータで頻度(ここでは分単位の"T")を指定しています。
periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45',
'2021-07-15 02:55:15', '2022-06-25 09:40:55'], freq="T")
PeriodIndexは、時間軸上の一定期間を示す序数値を保持する不変(イミュータブル)なndarrayです。時系列データの分析において非常に便利な構造です。
頻度情報の確認
作成したPeriodIndexの頻度オブジェクトを表示してみましょう。
print("\nPeriodIndex frequency object...\n", periodIndex.freq)
また、頻度を文字列として確認することもできます。
print("\nPeriodIndex frequency object as a string...\n", periodIndex.freqstr)
月番号の取得
monthプロパティを使うと、PeriodIndex内の各期間に対応する月番号が取得できます。月は「1月=1、2月=2 … 12月=12」という形式で表示されます。
print("\nThe month number from the PeriodIndex object...\n", periodIndex.month)
完全なサンプルコード
以下に、これまでの手順をまとめた完全なコード例を示します。
import pandas as pd
# PeriodIndexオブジェクトを作成
# freqパラメータで頻度を指定
periodIndex = pd.PeriodIndex(['2021-09-25 07:30:35', '2019-10-30 04:15:45',
'2021-07-15 02:55:15', '2022-06-25 09:40:55'], freq="T")
# PeriodIndexオブジェクトを表示
print("PeriodIndex...\n", periodIndex)
# 頻度オブジェクトを表示
print("\nPeriodIndex frequency object...\n", periodIndex.freq)
# 頻度を文字列として表示
print("\nPeriodIndex frequency object as a string...\n", periodIndex.freqstr)
# 月番号を表示(1月=1、2月=2 ... 12月=12)
print("\nThe month number from the PeriodIndex object...\n", periodIndex.month)
実行結果
上記のコードを実行すると、次のような出力が得られます。
PeriodIndex...
PeriodIndex(['2021-09-25 07:30', '2019-10-30 04:15', '2021-07-15 02:55', '2022-06-25 09:40'],
dtype='period[T]')
PeriodIndex frequency object...
<Minute>
PeriodIndex frequency object as a string...
T
The month number from the PeriodIndex object...
Int64Index([9, 10, 7, 6], dtype='int64')
出力結果からわかるように、4つの日時データそれぞれに対して、9月・10月・7月・6月という月番号が正しく抽出されています。このようにPeriodIndex.monthを使えば、時系列データから簡単に月情報だけを取り出すことができます。
-
Python PandasでTimedeltaから日数を取得する方法
PandasのTimedeltaオブジェクトから日数を取得するには、timedelta.daysプロパティを使用します。この記事では、具体的な手順とサンプルコードを通じて、その使い方をわかりやすく解説します。必要なライブラリのインポートまず、Pandasをインポートします。import pandas as pdTimedeltaオブジェクトの作成Timedeltaは、Python標準のdatetimeライブラリにおける時間差(期間)を表すデータ型です。Pandasではpd.Timedelta()を使って簡単に作成できます。ここでは、「5日1分45秒」のTimedeltaオブジェクトを作成してみ
-
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