ホームページ  >  記事  >  バックエンド開発  >  pandas で行データを削除する手法を深く理解する

pandas で行データを削除する手法を深く理解する

WBOY
WBOYオリジナル
2024-01-09 11:21:55849ブラウズ

pandas で行データを削除する手法を深く理解する

データ処理スキル: pandas で行を削除する方法の詳細な説明

データ処理では、多くの場合、DataFrame 内のデータの特定の行を削除する必要があります。 Pandas は、行データの削除操作を実装するためのさまざまなメソッドを提供する強力なデータ処理ライブラリです。この記事では、パンダで行を削除する一般的な方法をいくつか詳しく紹介し、具体的なコード例を示します。

  1. drop メソッドの使用
    pandas の DataFrame オブジェクトには、行インデックスまたは行ラベルを指定して行を削除できる Drop メソッドが用意されています。以下は簡単な例です:
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除索引为2的行数据
df = df.drop(2)

print(df)

出力結果は次のとおりです:

   Name  Age Gender
0   Tom   20      M
1  Nick   25      M
3  David  35      M

ご覧のとおり、drop メソッドは新しい DataFrame を返し、データフレーム内の指定された行を削除します。結果。 。

  1. ブールインデックスの使用
    場合によっては、条件に基づいて行を削除する必要がある場合があります。 Pandas のブール型インデックス作成は、これを行うための簡単な方法を提供します。以下は例です:
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除所有年龄小于30的行数据
df = df[df['Age'] >= 30]

print(df)

出力は次のとおりです:

   Name  Age Gender
2  John  30      M
3  David 35      M

ご覧のとおり、ブール インデックスを True または False に設定することで、行をフィルターで除外できます。保持する必要があるデータ。

  1. スライス操作を使用する
    連続する複数行のデータを削除する場合は、スライス操作を使用してそれを実現できます。以下に例を示します。
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除索引为1到2的行数据
df = df.drop(df.index[1:3])

print(df)

出力結果は次のとおりです。

   Name  Age Gender
0   Tom   20      M
3  David 35      M

ご覧のとおり、スライス操作のインデックス範囲を設定することで、連続する複数のデータを削除できます。データの行。

  1. set_index メソッドとreset_index メソッドを使用する
    DataFrame の行インデックスが数値型で、欠落している行がある場合は、set_index メソッドとreset_index メソッドを使用して欠落している行を削除できます。次に例を示します。
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 设置第三行的索引为缺失
df.set_index(pd.Index(['0', '1', '3']), inplace=True)

# 重置索引并删除缺失的行
df.reset_index(drop=True, inplace=True)

print(df)

出力は次のとおりです。

   Name  Age Gender
0   Tom   20      M
1  Nick  25      M
2  David 35      M

欠落している行にインデックスを設定し、reset_index メソッドを使用して行をリセットすると、それがわかります。インデックスを付けて欠落している行を削除することで、特定の行を削除する操作を実装できます。

要約すると、pandas DataFrame で行データを削除する一般的な方法をいくつか紹介します。さまざまなニーズに応じて、データ処理タスクを完了するための適切な方法を選択できます。実際のアプリケーションでは、特定の状況に応じて適切な方法を選択して行データを削除し、データ処理の効率と精度を向上させることができます。

以上がpandas で行データを削除する手法を深く理解するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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