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のインデックスをリセットし出力させることができました。
コメント