PandasにおけるDataFrameのindexをリセットする

PandasにおけるDataFrameのindexをリセットしてみます。

今回はDataFrameからいくつかの行を削除し、indexのリセットを試みます。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■DataFrameを作成する

DataFrameのindexをリセットする前に、DataFrameを作成します。

■コード

import pandas as pd 

data = {
    '名前':['田中','大田','山村','渋谷','戸田','大宮','横田'],
    '出身':['沖縄','宮崎','和歌山','滋賀','東京','茨城','北海道']
}

df = pd.DataFrame(data)

print(df)

インポートでPandasモジュールを呼び出します。dataという変数を作成し、その中に「名前」、「出身」の2つの列を格納します。

格納後、dfという変数を作成し、pd.DataFrame()と記述し、DataFrameを作成。作成後、dfという変数に格納します。

■実行

このスクリプトを実行すると、作成したDataFrameが出力されます。

■DataFrameのindexをリセットする

DataFrameの用意ができましたので、DataFrameのindexをリセットするスクリプトを書いていきます。

■コード

import pandas as pd 

data = {
    '名前':['田中','大田','山村','渋谷','戸田','大宮','横田'],
    '出身':['沖縄','宮崎','和歌山','滋賀','東京','茨城','北海道']
}

df = pd.DataFrame(data)
print("リセット前")
print(df)

df = df.drop([0,1])

print("行の削除後")
print(df)

df = df.reset_index()

print("リセット後")
print(df)

DataFrameのindexをリセットする場合は、まず今回は作成したDataFrameの特定の行の削除を行いますので、DataFrameを格納しているdfという変数に対してdf.drop()を使用し、行の削除を行います。今回はインデックスが「0」と「1」のものを削除します。

削除後、さらにDataFrameを格納しているdfという変数に対してdf.reset_index()を使用し、DataFrameのインデックスのリセットを行います。

行った後に、DataFrameのインデックスのリセットを行った状態のものを格納したdfという変数の情報をprint関数で出力します。

■実行

このスクリプトを「df_in_reset_2.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、今回作成したDataFrameのインデックスをリセットし出力させることができました。

コメント

タイトルとURLをコピーしました