Python Pandas:Periodオブジェクトの頻度を秒から分単位へ変換する方法
pandasで作成したPeriodオブジェクトの頻度を「秒」から「分」に変更するには、period.asfreq()メソッドを使用し、引数に'T'を指定します。
必要なライブラリのインポート
まず、必要なライブラリをインポートします。
import pandas as pd
Periodオブジェクトの作成
pandas.Periodは一定の期間を表すオブジェクトです。ここでは、freqパラメータに'S'(秒)を指定して、頻度が秒単位のPeriodオブジェクトを作成します。
period = pd.Period(freq="S", year = 2021, month = 9, day = 11, hour = 8, minute = 20, second = 45)
作成したPeriodオブジェクトを表示してみましょう。
print("Period...\n", period)
頻度を秒から分へ変換する
asfreq()メソッドの引数に"T"を指定することで、Periodオブジェクトの頻度を秒から分へ変換できます。
res = period.asfreq('T')
完全なサンプルコード
以下に、ここまでの手順をまとめたコード全体を示します。
import pandas as pd
# pandas.Periodは一定の期間を表すオブジェクト
# freqパラメータに'S'(秒)を指定してPeriodオブジェクトを作成
period = pd.Period(freq="S", year = 2021, month = 9, day = 11, hour = 8, minute = 20, second = 45)
# 秒単位の頻度を持つPeriodオブジェクトを表示
print("Period...\n", period)
# 頻度を秒から分へ変換
# asfreq()に"T"を指定して変換を実行
res = period.asfreq('T')
# 変換後の結果を表示
print("\nFinal result after converting frequency ...\n", res)
実行結果
上記のコードを実行すると、以下のような出力が得られます。
Period... 2021-09-11 08:20:45 Final result after converting frequency ... 2021-09-11 08:20
ご覧のとおり、元のPeriodオブジェクトは「2021-09-11 08:20:45」という秒単位の表現でしたが、asfreq('T')を適用したことで「2021-09-11 08:20」という分単位の表現に変換されました。秒の情報は切り捨てられ、分単位の精度で期間が扱えるようになります。同様の方法で、'H'(時間)や'D'(日)など他の頻度への変換も可能です。
-
Python Pandas – Timedeltaオブジェクトから秒の値を取得する方法
Timedeltaオブジェクトから秒の値を取得するには、timedelta.seconds プロパティを使用します。この記事では、実際のコード例とともに、その使い方を詳しく解説します。必要なライブラリのインポートまず、pandasライブラリをインポートします。import pandas as pdTimedeltaオブジェクトとはTimeDeltasは、Pythonの標準datetimeライブラリにおける時間差(timedelta)を表すデータ型です。Pandasでは pd.Timedelta() を使って簡単に作成できます。ここでは、「10秒・15ミリ秒・33ナノ秒」のTimedeltaオブ
-
Python Pandas入門:タイムスタンプを分単位のPeriod(期間)に変換する方法
Pandasでタイムスタンプ(Timestamp)を期間(Period)に変換するには、timestamp.to_period() メソッドを使用します。このメソッドの freq パラメータで頻度を指定でき、分単位の頻度にしたい場合は「T」を設定します。必要なライブラリのインポートまず、Pandasをインポートします。import pandas as pdタイムスタンプオブジェクトの作成次に、pd.Timestamp() を使ってタイムスタンプオブジェクトを作成します。年・月・日・時・分・秒・マイクロ秒を引数として渡せます。timestamp = pd.Timestamp(2021, 9, 6