パンダスデータフレーム

コンテンツ

Pandasは、高性能で使いやすいデータ構造とデータ分析ツールを提供するオープンソースのPythonライブラリです。そのコア機能の中で、Pandas DataFrameはPandasの最も重要なデータ構造の一つです。これは本質的に、異なるタイプのデータを持つ可能性のある列を持つ二次元のラベル付きデータ構造です。この記事では、包括的な例を用いてPandas DataFrameのさまざまな機能を探ります。

Pandas DataFrame 推奨記事

1. Pandas DataFrameの作成

Pandasを使用する際の最も基本的な操作の1つは、Pandas DataFrameを作成することです。リスト、辞書、さらには外部データファイルなど、さまざまなデータソースからPandas DataFrameを作成できます。

例 1: リストからPandas DataFrameを作成する

import pandas as pd
data = [['アレックス', 10], ['ボブ', 12], ['クラーク', 13]]
df = pd.DataFrame(data, columns=['名前', '年齢'])
print(df)

出力:

Pandas DataFrame

例2: 辞書からPandas DataFrameを作成する

import pandas as pd
data = {'名前': ['トム', 'ジャック', 'スティーブ', 'リッキー'],
        '年齢': [28, 34, 29, 42]}
df = pd.DataFrame(data)
print(df)

出力:

Pandas DataFrame

  1. Pandas DataFrameでのデータの読み書き

Pandasは、CSV、Excel、SQLデータベースなど、さまざまなデータ形式からの読み取りおよび書き込みをサポートしています。

例 3: CSV からデータを読み込む

import pandas as pd
df = pd.read_csv('pandasdataframe.com_data.csv')
print(df)

例 4: Excel へのデータの書き込み

import pandas as pd
df = pd.DataFrame({'データ': [10, 20, 30, 20, 15, 30, 45]})
df.to_excel('pandasdataframe.com_output.xlsx', index=False)
  1. データの選択、追加、および削除 in Pandas DataFrame

データの操作は、Pandasを効果的に使用するための中心です。PandasのDataFrame内でデータを選択、追加、または削除することができます。

例 5: Pandas DataFrame で列によるデータの選択

import pandas as pd
data = {'名前': ['トム', 'ジェリー', 'ミッキー', 'ドナルド'],
        '年齢': [25, 30, 35, 40]}
df = pd.DataFrame(data)
print(df['名前'])

出力:

Pandas DataFrame

例6: Pandas DataFrameに新しい列を追加する

import pandas as pd
df = pd.DataFrame({'名前': ['トム', 'ジャック', 'スティーブ', 'リッキー'],
                   '年齢': [28, 34, 29, 42]})
df['給与'] = [1000, 1500, 1200, 1800]
print(df)

出力:

Pandas DataFrame

例 7: Pandas DataFrame での列の削除

import pandas as pd
data = {'名前': ['トム', 'ジェリー', 'ミッキー', 'ドナルド'],
        '年齢': [25, 30, 35, 40]}
df = pd.DataFrame(data)
df.drop('年齢', axis=1, inplace=True)
print(df)

出力:

Pandas DataFrame

4. Pandas DataFrameにおける欠損データの処理

欠損データの処理は、データ分析のもう一つの重要な部分です。Pandasは、DataFrame内の欠損データを処理するためのいくつかのメソッドを提供しています。

例 8: Pandas DataFrameの欠損データの補填

import pandas as pd
import numpy as np
df = pd.DataFrame({'最初のスコア': [100, 90, np.nan, 95],
                   '二番目のスコア': [30, 45, 56, np.nan],
                   '三番目のスコア': [np.nan, 40, 80, 98]})
df.fillna(0, inplace=True)
print(df)

出力:

Pandas DataFrame

例 9: Pandas DataFrame における欠損データを持つ行の削除

import pandas as pd
import numpy as np
df = pd.DataFrame({'最初のスコア': [100, 90, np.nan, 95],
                   '二番目のスコア': [30, 45, 56, np.nan],
                   '三番目のスコア': [np.nan, 40, 80, 98]})
df.dropna(inplace=True)
print(df)

出力:

Pandas DataFrame

  1. パンダスデータフレーム操作

Pandas DataFramesは、データ分析や操作に非常に役立つさまざまな操作をサポートしています。

例 10: Pandas DataFrameでの算術演算の実行

import pandas as pd
df = pd.DataFrame({
    'A': [14, 4, 5, 4, 1],
    'B': [5, 2, 54, 3, 2],
    'C': [20, 20, 7, 3, 8],
    'D': [14, 3, 6, 2, 6]})
df['A'] = df['A'] + 10
print(df)

出力:

Pandas DataFrame

例 11: Pandas DataFrame にデータに関数を適用する

import pandas as pd
df = pd.DataFrame({
    'A': [14, 4, 5, 4, 1],
    'B': [5, 2, 54, 3, 2],
    'C': [20, 20, 7, 3, 8],
    'D': [14, 3, 6, 2, 6]})
df = df.apply(lambda x: x + 10)
print(df)

出力:

Pandas DataFrame

  1. Pandas DataFrameにおけるデータのグループ化と集約

データのグループ化と集約は、大規模なデータセットを扱うときや、カテゴリ化されたデータに対して操作を行う必要があるときに不可欠です。

例 12: Pandas DataFrameでの列によるデータのグループ化

import pandas as pd
data = {'会社': ['Google', 'Google', 'Microsoft', 'Microsoft', 'Facebook', 'Facebook'],
        '人物': ['Sam', 'Charlie', 'Amy', 'Vanessa', 'Carl', 'Sarah'],
        '売上': [200, 120, 340, 124, 243, 350]}
df = pd.DataFrame(data)
grouped_df = df.groupby('会社')
print(grouped_df.mean())

例 13: Pandas DataFrameで複数の関数を使用してデータを集約する

import pandas as pd
data = {'会社': ['Google', 'Google', 'Microsoft', 'Microsoft', 'Facebook', 'Facebook'],
        '人物': ['Sam', 'Charlie', 'Amy', 'Vanessa', 'Carl', 'Sarah'],
        '売上': [200, 120, 340, 124, 243, 350]}
df = pd.DataFrame(data)
grouped_df = df.groupby('会社').agg({'売上': ['平均', '合計']})
print(grouped_df)
要約する
Pandasは高性能で使いやすいデータ構造と分析ツールを提供するオープンソースのPythonライブラリです。特にPandas DataFrameは重要なデータ構造で、異なる型のデータを持つ2次元ラベル付きデータです。この記事では、DataFrameの作成、データの読み書き、選択、追加、削除、欠損データの処理、演算、グループ化、結合などの機能を具体例を交えて解説します。