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

Python Pandas入門:Periodオブジェクトを分単位の頻度でタイムスタンプに変換する方法

PandasのPeriodオブジェクトを分単位(minute)の頻度を持つタイムスタンプとして取得するには、period.to_timestamp()メソッドを使用し、freqパラメータに'T'を指定します。

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

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

import pandas as pd

pandas.Periodは、ある期間の時刻情報を表すオブジェクトです。ここではPeriodオブジェクトを作成してみましょう。

period = pd.Period(freq="S", year = 2021, month = 11, day = 26, hour = 11, minute = 45, second = 55)

Periodオブジェクトの表示

作成したPeriodオブジェクトを表示して確認します。

print("Period...\n", period)

タイムスタンプへの変換

PeriodオブジェクトのTimestamp表現を返します。「freq」パラメータを使って頻度を指定しており、ここでは'T'(分単位=minutely)を設定しています。

print("\nPeriod to Timestamp with minutely frequency...\n", period.to_timestamp(freq='T'))

サンプルコード(完全版)

以下が全体のコード例です。

import pandas as pd

# pandas.Periodは期間の時刻情報を表すオブジェクト
# Periodオブジェクトを作成
period = pd.Period(freq="S", year = 2021, month = 11, day = 26, hour = 11, minute = 45, second = 55)

# Periodオブジェクトを表示
print("Period...\n", period)

# PeriodオブジェクトのTimestamp表現を返す
# freqパラメータで頻度を指定
# 頻度は'T'、つまり分単位(minutely)に設定
print("\nPeriod to Timestamp with minutely frequency...\n", period.to_timestamp(freq='T'))

実行結果

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

Period...
2021-11-26 11:45:55

Period to Timestamp with minutely frequency...
2021-11-26 11:45:00

補足:出力結果のポイント

元のPeriodオブジェクトは「2021-11-26 11:45:55」という秒単位の情報を持っていますが、to_timestamp(freq='T')で分単位の頻度を指定することで、秒の情報が切り捨てられ「2021-11-26 11:45:00」というタイムスタンプに変換されていることがわかります。

なお、Pandas 2.2以降では'T'というエイリアスは非推奨となっており、代わりに'min'を使用することが推奨されています。新しいバージョンをお使いの場合は、以下のように記述してください。

period.to_timestamp(freq='min')
  1. Python Pandas入門:タイムデルタを分単位の頻度で丸める方法

    タイムデルタ(Timedelta)を指定した解像度で丸めるには、round() メソッドを使用します。分単位の頻度で丸めたい場合は、freq パラメータに T を指定します。 必要なライブラリのインポート まず、pandas をインポートします。 import pandas as pd Timedeltaオブジェクトの作成 TimeDeltas は、Python の標準的な datetime ライブラリで使われる timedelta とは異なる表現を持ちます。ここでは、日・時・分・秒・ミリ秒・ナノ秒を含む Timedelta オブジェクトを作成します。 timedelta = pd.Timed

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

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