Pandasの基本操作
PandasはPythonでデータ分析を行うための強力なライブラリです。以下に、Pandasの基本的な操作方法を示します。
まず、Pandasライブラリをインポートします。
import pandas as pd
次に、Pandasの主要なデータ構造であるDataFrameを作成します。DataFrameは、行と列にラベルが付けられた2次元のデータ構造です。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
DataFrameの一部を表示するには、head()
メソッドを使用します。
print(df.head())
特定の列を選択するには、列の名前を指定します。
print(df['name'])
これらはPandasの基本的な操作の一部です。データの選択、フィルタリング、ソート、集約など、より高度な操作も可能です。Pandasは非常に強力で柔軟性のあるツールであり、データ分析のための多くの機能を提供しています。詳細な情報はPandasの公式ドキュメンテーションを参照してください。
条件によるデータ抽出
Pandasでは、特定の条件を満たすデータを抽出することができます。以下に、その基本的な方法を示します。
まず、先ほど作成したDataFrameを使用します。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
例えば、年齢が30歳以上の人を抽出したい場合は、以下のようにします。
df_over_30 = df[df['age'] >= 30]
print(df_over_30)
このコードは、df['age'] >= 30
という条件を満たす行だけを新しいDataFrame df_over_30
に抽出します。
また、特定の都市に住んでいる人を抽出したい場合は、以下のようにします。
df_ny = df[df['city'] == 'New York']
print(df_ny)
このコードは、df['city'] == 'New York'
という条件を満たす行だけを新しいDataFrame df_ny
に抽出します。
これらの方法を組み合わせることで、複雑な条件に基づいてデータを抽出することも可能です。Pandasはこのようなデータ操作を容易に行うための多くの機能を提供しています。詳細な情報はPandasの公式ドキュメンテーションを参照してください。
比較演算子とデータ抽出
Pandasでは、比較演算子を使用してデータを抽出することができます。以下に、その基本的な方法を示します。
まず、先ほど作成したDataFrameを使用します。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
例えば、年齢が30歳以上の人を抽出したい場合は、以下のようにします。
df_over_30 = df[df['age'] >= 30]
print(df_over_30)
このコードは、df['age'] >= 30
という条件を満たす行だけを新しいDataFrame df_over_30
に抽出します。ここで使用されている >=
は比較演算子の一つです。
また、特定の都市に住んでいる人を抽出したい場合は、以下のようにします。
df_ny = df[df['city'] == 'New York']
print(df_ny)
このコードは、df['city'] == 'New York'
という条件を満たす行だけを新しいDataFrame df_ny
に抽出します。ここで使用されている ==
も比較演算子の一つです。
Pandasでは、これらの比較演算子を使用して、特定の条件を満たすデータを抽出することができます。詳細な情報はPandasの公式ドキュメンテーションを参照してください。
複数条件によるデータ抽出
Pandasでは、複数の条件を組み合わせてデータを抽出することができます。以下に、その基本的な方法を示します。
まず、先ほど作成したDataFrameを使用します。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
例えば、年齢が30歳以上で、かつニューヨークに住んでいる人を抽出したい場合は、以下のようにします。
df_ny_over_30 = df[(df['age'] >= 30) & (df['city'] == 'New York')]
print(df_ny_over_30)
このコードは、df['age'] >= 30
とdf['city'] == 'New York'
という2つの条件を満たす行だけを新しいDataFrame df_ny_over_30
に抽出します。ここで使用されている &
は論理演算子で、両方の条件を満たす場合に真となります。
また、年齢が30歳以上、またはパリに住んでいる人を抽出したい場合は、以下のようにします。
df_over_30_or_paris = df[(df['age'] >= 30) | (df['city'] == 'Paris')]
print(df_over_30_or_paris)
このコードは、df['age'] >= 30
またはdf['city'] == 'Paris'
という条件を満たす行を新しいDataFrame df_over_30_or_paris
に抽出します。ここで使用されている |
は論理演算子で、どちらか一方の条件を満たす場合に真となります。
これらの方法を組み合わせることで、複雑な条件に基づいてデータを抽出することも可能です。詳細な情報はPandasの公式ドキュメンテーションを参照してください。
Pandasにおける基本的な演算
Pandasでは、データフレームやシリーズに対して様々な演算を行うことができます。以下に、その基本的な方法を示します。
まず、先ほど作成したDataFrameを使用します。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
例えば、全ての人の年齢に5を加えたい場合は、以下のようにします。
df['age'] = df['age'] + 5
print(df)
このコードは、df['age']
列の全ての値に5を加え、その結果を同じ列に代入します。
また、新しい列を作成することも可能です。例えば、全ての人が5年後にどの都市に住んでいるかを示す新しい列を作成したい場合は、以下のようにします。
df['city_in_5_years'] = df['city']
print(df)
このコードは、df['city']
列の全ての値を新しい列df['city_in_5_years']
にコピーします。
これらの方法を組み合わせることで、データフレームに対する複雑な演算を行うことも可能です。詳細な情報はPandasの公式ドキュメンテーションを参照してください。
where関数の使用
Pandasのwhere
関数は、条件に基づいてデータフレームの値を置き換えるために使用されます。以下に、その基本的な使用方法を示します。
まず、先ほど作成したDataFrameを使用します。
data = {
'name': ['John', 'Anna', 'Peter', 'Linda'],
'age': [28, 24, 35, 32],
'city': ['New York', 'Paris', 'Berlin', 'London']
}
df = pd.DataFrame(data)
例えば、年齢が30歳未満の人の年齢を’Under 30’と表示したい場合は、以下のようにします。
df['age'] = df['age'].where(df['age'] >= 30, 'Under 30')
print(df)
このコードは、df['age'] >= 30
という条件を満たす行はそのままにし、満たさない行は’Under 30’に置き換えます。
また、where
関数の第二引数を省略すると、条件を満たさない行はNaN(Not a Number)に置き換えられます。
df['age'] = df['age'].where(df['age'] >= 30)
print(df)
このコードは、df['age'] >= 30
という条件を満たす行はそのままにし、満たさない行はNaNに置き換えます。
where
関数は、条件に基づいてデータフレームの値を効率的に置き換えるための強力なツールです。詳細な情報はPandasの公式ドキュメンテーションを参照してください。