パンダのチートシート

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-04 06:13:02398ブラウズ

Pandas Cheat Sheet

Pandas の総合ガイド: 究極のチートシート

Pandas は、Python 上に構築されたオープンソースのデータ操作および分析ライブラリです。 DataFrame や Series などの使いやすいデータ構造を提供し、あらゆる種類のデータ分析タスクのデータ処理を容易にします。データ サイエンス ワークフローの重要なステップである構造化データの処理、データ クリーニング、準備に広く使用されています。時系列データ、異種データ、CSV、Excel、SQL データベース、JSON 形式のデータのいずれであっても、Pandas はこのデータの操作をより簡単にする強力なツールを提供します。


1.パンダをインポートしています

Pandas の機能を使用する前に、ライブラリをインポートする必要があります。構文を簡潔に保つために、通常は pd としてインポートされます。


import pandas as pd



2.パンダのデータ構造

シリーズ

シリーズは、任意のデータ型 (整数、文字列、浮動小数点など) を保持できる 1 次元のラベル付き配列です。リスト、NumPy 配列、または辞書から作成できます。


# Create a Pandas Series from a list
s = pd.Series([1, 2, 3, 4])


期待される出力:


0    1
1    2
2    3
3    4
dtype: int64


データフレーム

DataFrame は、データベースや Excel スプレッドシートのテーブルに似た、2 次元のラベル付きデータ構造です。行と列で構成されます。各列には異なるデータ型を指定できます。


# Create a DataFrame from a dictionary
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [24, 27, 22], 'City': ['New York', 'London', 'Berlin']}
df = pd.DataFrame(data)


期待される出力:


      Name  Age      City
0    Alice   24  New York
1      Bob   27    London
2  Charlie   22    Berlin



3. DataFrame とシリーズの作成

辞書より


data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)


リストのリストから


data = [[1, 2, 3], [4, 5, 6]]
df = pd.DataFrame(data, columns=["A", "B", "C"])


期待される出力:


   A  B  C
0  1  2  3
1  4  5  6



4. DataFrame の検査

Pandas は、データを検査して情報を取得するためのいくつかの方法を提供します。

  • df.head(n) – 最初の n 行を返します。
  • df.tail(n) – 最後の n 行を返します。
  • df.info() – DataFrame に関する概要情報を提供します。
  • df.describe() – DataFrame の記述統計を生成します。

# Inspecting the DataFrame
print(df.head())
print(df.tail())
print(df.info())
print(df.describe())


期待される出力:


   A  B  C
0  1  2  3
1  4  5  6

   A  B  C
0  1  2  3
1  4  5  6

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2 entries, 0 to 1
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       2 non-null      int64
 1   B       2 non-null      int64
 2   C       2 non-null      int64
dtypes: int64(3)
memory usage: 128.0 bytes

       A    B    C
count  2.0  2.0  2.0
mean   2.5  3.5  4.5
std    2.1  2.1  2.1
min    1.0  2.0  3.0
25%    1.5  2.5  3.5
50%    2.0  3.0  4.0
75%    2.5  3.5  4.5
max    4.0  5.0  6.0



5.データのインデックス作成、スライス、およびサブセット化

列へのアクセス

ドット表記を使用するか、角かっこでインデックスを付けることによって列にアクセスできます。


# Dot notation
print(df.A)

# Bracket notation
print(df["B"])


インデックスによる行へのアクセス

整数位置ベースのインデックス作成には .iloc[] を使用でき、ラベルベースのインデックス作成には .loc[] を使用できます。


# Using iloc (index-based)
print(df.iloc[0])  # Access first row

# Using loc (label-based)
print(df.loc[0])  # Access first row using label


データのスライス

DataFrame をスライスしてデータのサブセットを取得できます。行または列をスライスできます。


# Select specific rows and columns
subset = df.loc[0:1, ["A", "C"]]


期待される出力:


   A  C
0  1  3
1  4  6



6.データフレームの変更

列の追加

値を割り当てることで、DataFrame に列を直接追加できます。


df['D'] = [7, 8]  # Adding a new column


列値の変更

列にアクセスして新しい値を割り当てることで、列の値を変更できます。


df['A'] = df['A'] * 2  # Modify the 'A' column


列または行の削除

drop() 関数を使用して行または列を削除できます。


df = df.drop(columns=['D'])  # Dropping a column
df = df.drop(index=1)  # Dropping a row by index



7.欠落データの処理

欠落データの処理は重要なタスクです。 Pandas は、欠落データを処理するためのいくつかの関数を提供します。

  • df.isnull() – 欠損値を検出します (ブール値の DataFrame を返します)。
  • df.notnull() – 非欠損値を検出します (ブール値の DataFrame を返します)。
  • df.fillna(value) – 欠損値を指定された値で埋めます。
  • df.dropna() – 欠損値のある行を削除します。

df = df.fillna(0)  # Fill missing data with 0
df = df.dropna()  # Drop rows with any missing values



8.データの集約とグループ化

GroupBy

groupby() 関数は、データをグループに分割し、関数を適用して、結果を結合するために使用されます。


# Grouping by a column and calculating the sum
grouped = df.groupby('City').sum()


集計関数

sum()、mean()、min()、max() などのさまざまな集計関数を適用できます。


# Aggregating data using mean
df.groupby('City').mean()



9.並べ替えとランキング

データの並べ替え

sort_values() 関数を使用すると、1 つ以上の列で DataFrame を並べ替えることができます。


# Sorting by a column in ascending order
df_sorted = df.sort_values(by='Age')

# Sorting by multiple columns
df_sorted = df.sort_values(by=['Age', 'Name'], ascending=[True, False])


ランキング

rank() を使用して、DataFrame 内の値をランク付けできます。


df['Rank'] = df['Age'].rank()



10.データフレームのマージ、結合、連結

データフレームの結合

共通の列またはインデックスに基づいて 2 つの DataFrame を結合できます。


df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']})
df2 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'C': ['C0', 'C1', 'C2']})
merged_df = pd.merge(df1, df2, on='A')


Concatenating DataFrames

You can concatenate DataFrames along rows or columns using concat().


df1 = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B'])
df2 = pd.DataFrame([[5, 6], [7, 8]], columns=['A', 'B'])
concat_df = pd.concat([df1, df2], axis=0)



Conclusion

Pandas is a versatile tool for data manipulation, from importing and cleaning data to performing complex operations. This cheat sheet provides a quick overview of some of the most common Pandas features, helping you make your data analysis workflow more efficient.

以上がパンダのチートシートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。