ホームページ > バックエンド開発 > Python チュートリアル > Pandas は Excel スタイルの日付を DateTime オブジェクトに効率的に変換するにはどうすればよいですか?

Pandas は Excel スタイルの日付を DateTime オブジェクトに効率的に変換するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-28 08:23:10
オリジナル
842 人が閲覧しました

How Can Pandas Efficiently Convert Excel-Style Dates to DateTime Objects?

Pandas を使用した Excel スタイルの日付の変換

XML ファイルを含む多くのデータ ソースは、次のように表される Excel スタイルの日付形式で日付を保存する場合があります。浮動小数点数。これらの数値は、指定された基準日 (通常は 1900 年 1 月 1 日または 1899 年 12 月 30 日のいずれか) からの日数を表します。これらの数値を通常の日時オブジェクトに変換するのは、一般的な課題となる可能性があります。

Pandas Datetime変換

Pandas は、Excel スタイルの日付を変換するための強力なソリューションを提供します。 pandas.TimedeltaIndex メソッドと pandas.DataFrame メソッドを利用すると、これらの数値を読み取り可能な日時値にシームレスに変換できます。

実装

次のコード スニペットは、変換プロセスを示しています。 :

import datetime as dt
import pandas as pd

# Create a DataFrame with an 'date' column containing Excel style dates
df = pd.DataFrame({'date': [42580.3333333333, 10023]})

# Construct a TimedeltaIndex from the dates and add it to a datetime object
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1900, 1, 1)
ログイン後にコピー

この例では、TimedeltaIndex はこれは、数値が日数を表すことを示す、unit='d' パラメーターを使用して構築されます。デフォルトの基準日は 1900 年 1 月 1 日です。

追加の考慮事項

一部の Excel アプリケーションでは、1899 年 12 月 30 日など、別の基準日が使用される場合があります。そのような場合は、を使用すると、日時コンストラクターで希望の基準日を指定できます。

# Specify base date as December 30, 1899
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1899, 12, 30)
ログイン後にコピー

を使用することで、 Pandas の日付操作機能を使用すると、Excel スタイルの日付を datetime オブジェクトに効率的かつ正確に変換して、さらなるデータ分析と処理を行うことができます。

以上がPandas は Excel スタイルの日付を DateTime オブジェクトに効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート