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

Python Pandas – CustomBusinessHourオフセットオブジェクトからカスタム営業時間の開始時刻を24時間形式で表示する方法

CustomBusinessHourオフセットオブジェクトからカスタム営業時間の開始時刻を24時間形式で表示するには、Pandasが提供する CustomBusinessHour.start プロパティを使用します。このプロパティを参照することで、オフセットに設定された営業開始時刻を簡単に取得できます。

なお、CustomBusinessHourはDateOffsetのサブクラスであり、標準的な営業時間(平日9:00〜17:00など)とは異なる、独自の営業時間帯を定義したい場合に便利です。開始時刻や終了時刻だけでなく、休業日(holiday)や曜日の指定も可能です。

実装の手順

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

import pandas as pd

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

timestamp = pd.Timestamp('2021-11-14 05:20:30')

CustomBusinessHourオフセットを作成します。ここで start はカスタム営業時間の開始時刻(24時間形式)、end は終了時刻(24時間形式)を表します。引数 n を指定すると、オフセットを適用する回数(営業時間の数)を設定できます。

cbhOffset = pd.tseries.offsets.CustomBusinessHour(start="09:30", end="18:00", n=8)

タイムスタンプにオフセットを加算し、更新されたタイムスタンプを表示します。

print("\nUpdated Timestamp...\n", timestamp + cbhOffset)

最後に、カスタム営業時間の開始時刻を表示します。

print("\nThe start time of the custom business hour...\n", cbhOffset.start)

コード例

以下に完全なサンプルコードを示します。

import pandas as pd

# Pandasでタイムスタンプオブジェクトを設定
timestamp = pd.Timestamp('2021-11-14 05:20:30')

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

# CustomBusinessHourオフセットを作成
# CustomBusinessHourはDateOffsetのサブクラスです
# 「start」はカスタム営業時間の開始時刻(24時間形式)
# 「end」はカスタム営業時間の終了時刻(24時間形式)
cbhOffset = pd.tseries.offsets.CustomBusinessHour(start="09:30", end="18:00", n=8)

# CustomBusinessHourオフセットを表示
print("\nCustomBusinessHour Offset...\n", cbhOffset)

# タイムスタンプにオフセットを加算し、更新されたタイムスタンプを表示
print("\nUpdated Timestamp...\n", timestamp + cbhOffset)

# カスタム営業時間の開始時刻を表示
print("\nThe start time of the custom business hour...\n", cbhOffset.start)

出力結果

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

Timestamp...
 2021-11-14 05:20:30

CustomBusinessHour Offset...
 <8 * CustomBusinessHours: CBH=09:30-18:00>

Updated Timestamp...
 2021-11-15 17:30:00

The start time of the custom business hour...
 (datetime.time(9, 30),)

出力の解説

この出力から、以下のことが確認できます。

  • 元のタイムスタンプ「2021-11-14 05:20:30」は日曜日のため営業時間外であり、オフセット適用後は翌営業日の「2021-11-15 17:30:00」に移動しています。
  • CustomBusinessHourオフセットの表示内容「<8 * CustomBusinessHours: CBH=09:30-18:00>」から、8営業時間分のオフセットが設定され、営業時間帯が9:30〜18:00であることがわかります。
  • cbhOffset.start の結果として「(datetime.time(9, 30),)」が出力されており、カスタム営業時間の開始時刻が24時間形式の9時30分であることを確認できます。

このように、startプロパティを使えば、CustomBusinessHourオブジェクトに設定された営業開始時刻をプログラムから簡単に参照できます。営業時間の検証やスケジュール処理などの業務システムで活用できるでしょう。

  1. Python PandasでUTCオフセット時間を取得する方法

    PandasでタイムスタンプのUTCオフセット時間を取得するには、timestamp.utcoffset()メソッドを使用します。このメソッドは、タイムゾーンが設定されたTimestampオブジェクトに対して、協定世界時(UTC)からのずれ(オフセット)を返します。まずは、必要なライブラリをインポートしましょう。import pandas as pd手順1:タイムスタンプの作成次に、タイムゾーンとして「UTC」を指定してTimestampオブジェクトを作成します。timestamp = pd.Timestamp(2021-10-16T15:12:34.261811624, tz=UTC)手順2

  2. 【Python Pandas】Timestampオブジェクトから現在の日付と時刻を取得する方法

    PandasのTimestampオブジェクトから現在の日付と時刻を取得するには、timestamp.today()メソッドを使用します。このメソッドは、呼び出し元のタイムスタンプ情報を基に、実行時点の「今日」の日付と時刻を返します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pd import datetimeタイムスタンプの作成次に、PandasでTimestampオブジェクトを作成します。ここでは2021年10月10日の日付を指定しています。timestamp = pd.Timestamp(datetime.datetime(20