Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Pandas – 指定したタイムスタンプを1時間ごとの頻度で期間(Period)に変換する方法

Pandasでタイムスタンプ(Timestamp)を期間(Period)に変換するには、timestamp.to_period()メソッドを使用します。このメソッドのfreqパラメータで頻度を指定することができ、1時間ごとの頻度に変換したい場合は「H」を設定します。

必要なライブラリのインポート

まず、必要なライブラリをインポートします。

import pandas as pd

タイムスタンプオブジェクトの作成

次に、Pandasでタイムスタンプオブジェクトを作成します。

timestamp = pd.Timestamp(2021, 9, 18, 11, 50, 20, 33)

作成したタイムスタンプを期間に変換します。「freq」パラメータに「'H'」を指定することで、頻度を1時間ごとに設定しています。

timestamp.to_period(freq='H')

サンプルコード

以下は、ここまでの手順をまとめた完全なコード例です。

import pandas as pd

# Pandasでタイムスタンプオブジェクトを作成
timestamp = pd.Timestamp(2021, 9, 18, 11, 50, 20, 33)

# タイムスタンプを表示
print("Timestamp...\n", timestamp)

# タイムスタンプを期間に変換
# 「freq」パラメータに「'H'」を指定し、頻度を1時間ごとに設定
print("\nTimestamp to Period with hourly frequency...\n", timestamp.to_period(freq='H'))

出力結果

上記のコードを実行すると、以下のような出力が得られます。

Timestamp...
 2021-09-18 11:50:20.000033
Timestamp to Period with hourly frequency...
 2021-09-18 11:00

補足:新しいバージョンのPandasでの注意点

Pandas 2.2以降では、時間単位の頻度エイリアス「H」は非推奨(Deprecated)となり、代わりに小文字の「h」の使用が推奨されています。最新バージョンをお使いの場合は、timestamp.to_period(freq='h')のように記述してください。

また、変換後のPeriodは、元のタイムスタンプの分・秒以下の情報が切り捨てられ、時間単位の開始時点(この例では「2021-09-18 11:00」)として表される点にも注意しましょう。

  1. Python Pandas入門:タイムスタンプを分単位のPeriod(期間)に変換する方法

    Pandasでタイムスタンプ(Timestamp)を期間(Period)に変換するには、timestamp.to_period() メソッドを使用します。このメソッドの freq パラメータで頻度を指定でき、分単位の頻度にしたい場合は「T」を設定します。必要なライブラリのインポートまず、Pandasをインポートします。import pandas as pdタイムスタンプオブジェクトの作成次に、pd.Timestamp() を使ってタイムスタンプオブジェクトを作成します。年・月・日・時・分・秒・マイクロ秒を引数として渡せます。timestamp = pd.Timestamp(2021, 9, 6

  2. Python Pandas - 指定したタイムスタンプを期間(Period)に変換する方法

    Pandasで指定したタイムスタンプを期間に変換するには、timestamp.to_period() メソッドを使用します。このメソッドでは、freq パラメータを使って頻度を指定することができます。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdタイムスタンプオブジェクトの作成次に、Pandasでタイムスタンプオブジェクトを作成します。timestamp = pd.Timestamp(2021-09-14T15:12:34.261811624)タイムスタンプから期間への変換タイムスタンプを期間に変換します。ここでは、freq パラメ