ホームページ > バックエンド開発 > Python チュートリアル > Pandas DataFrame を作成する最も効率的な方法は何ですか?

Pandas DataFrame を作成する最も効率的な方法は何ですか?

Susan Sarandon
リリース: 2024-11-27 16:49:11
オリジナル
763 人が閲覧しました

What's the Most Efficient Way to Create a Pandas DataFrame?

空の DataFrame の作成: アプローチの比較

空の pandas DataFrame を作成し、それを徐々に埋めていく従来の方法は、非効率的でメモリを消費する可能性があります。 -集中的な。より最適なアプローチは、データをリストに蓄積し、必要に応じて DataFrame に変換することです

リスト蓄積の利点:

  • メモリ効率: リストは、リストに比べてメモリ消費量が少ない軽量のデータ構造です。 DataFrames.
  • パフォーマンス: リストへの追加は、DataFrame への追加を繰り返し行うよりも大幅に高速です。
  • 自動データ型推論: DataFrame に変換されると、pandas が適切なデータを自動的に決定します。
  • 自動インデックス作成: データの RangeIndex が自動的に作成され、手動でインデックスを割り当てる必要がなくなります。

サンプル コードリストの蓄積:

data = []
for row in some_function_that_yields_data():
    data.append(row)

df = pd.DataFrame(data)
ログイン後にコピー

注意避けるべきアプローチ:

  • DataFrame への反復追加: パフォーマンス上の理由から、ループ内で df.append または pd.concat を使用することは避けてください。このアプローチは、二次複雑度演算につながります。
  • ループ内で loc を使用する: df.loc[len(df)] を使用して追加すると、メモリ割り当ても非効率になります。
  • NaN の空の DataFrame: NaN で満たされた DataFrame を作成すると、オブジェクト列を作成できます。

ベンチマーク結果:

ベンチマーク結果は、リストの蓄積が従来の反復追加方法よりも大幅に高速であることを示しています。 DataFrame が大きくなるにつれて、時間差はより顕著になります。

以上がPandas DataFrame を作成する最も効率的な方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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