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

Python Pandas - タイムスタンプを別のタイムゾーンに変換する方法

Python Pandasでタイムスタンプのタイムゾーンを変換する方法

Pandasでタイムスタンプを別のタイムゾーンに変換するには、timestamp.tz_convert()メソッドを使用します。引数に変換先のタイムゾーンを指定するだけで、簡単に変換できます。

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

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

import pandas as pd

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

次に、Pandasでタイムスタンプオブジェクトを作成します。ここでは、tz引数を使ってタイムゾーン(US/Eastern)も同時に設定しています。

timestamp = pd.Timestamp('2021-10-14T15:12:34.261811624', tz='US/Eastern')

タイムゾーンの変換

tz_convert()メソッドを呼び出し、変換先のタイムゾーンを引数として渡すことで、タイムスタンプのタイムゾーンを変換できます。

timestamp.tz_convert('Australia/Brisbane')

サンプルコード

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

import pandas as pd

# Pandasでタイムスタンプオブジェクトを作成
# タイムゾーンも設定しています
timestamp = pd.Timestamp('2021-10-14T15:12:34.261811624', tz='US/Eastern')

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

# タイムゾーンを変換して表示
print("\nConvert the Timestamp timezone...\n",
timestamp.tz_convert('Australia/Brisbane'))

実行結果

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

Timestamp...
 2021-10-14 15:12:34.261811624-04:00

Convert the Timestamp timezone...
 2021-10-15 05:12:34.261811624+10:00

出力結果を見ると、元のタイムスタンプは「2021-10-14 15:12:34」(UTC-04:00)でしたが、オーストラリア/ブリスベン(UTC+10:00)に変換すると「2021-10-15 05:12:34」となり、日付が翌日に変わっています。これは両地域の時差が14時間あるためです。tz_convert()はタイムゾーン情報のみを変換し、実際の時刻(絶対的な瞬間)は保持される点に注意してください。

  1. 【Python】Pandas DataFrameのデータ型をastype()で変換する方法

    Pandasのastype()メソッドとはPandasでは、astype()メソッドを使用することで、DataFrameの列(カラム)のデータ型を別のデータ型へ簡単に変換できます。まず、必要なライブラリをインポートしましょう。import pandas as pdDataFrameの作成次に、DataFrameを作成します。ここでは「Reg_Price」(float型)と「Units」(int型)の2つの列を持つデータを用意しました。dataFrame = pd.DataFrame( { Reg_Price: [7000.5057, 1500, 5000, 8000, 900

  2. Pythonで日付文字列をタイムスタンプに変換する方法【mktime活用】

    Pythonで日付を表す文字列をタイムスタンプ(UNIX時間)に変換したい場合、「time」パッケージに含まれるmktimeメソッドを使用するのが一般的です。この記事では、具体的なコード例と実行結果をもとに、その手順をわかりやすく解説します。 サンプルコード import time import datetime my_string = 24/03/2021 print(The date string is :) print(my_string) print(The timestamp is :) print(time.mktime(datetime.datetime.strptime(my