Pythonのpop関数を使ってデータフレームの列を削除する方法
データフレームとは
データフレーム(DataFrame)は、行と列という表形式でデータを格納する二次元データ構造です。SQLのデータテーブルやExcelのシートと同じように視覚化できるため、表形式のデータを直感的に扱うことができます。
データフレームから列を削除する方法はいくつかありますが、本記事ではpop関数を使った方法を紹介します。pop関数は、削除したい列名を引数として受け取り、その列をデータフレームから取り除きます。なお、drop関数とは異なり、pop関数は削除した列をSeriesとして返すという特徴があります。
サンプルコード
import pandas as pd
my_data = {'ab' : pd.Series([1, 8, 7], index=['a', 'b', 'c']),
'cd' : pd.Series([1, 2, 0, 9], index=['a', 'b', 'c', 'd']),
'ef' : pd.Series([56, 78, 32],index=['a','b','c']),
'gh' : pd.Series([66, 77, 88, 99],index=['a','b','c', 'd']) }
my_df = pd.DataFrame(my_data)
print("The dataframe is :")
print(my_df)
print("Deleting the column using the 'pop' function")
my_df.pop('cd')
print(my_df)実行結果
The dataframe is : ab cd ef gh a 1.0 1 56.0 66 b 8.0 2 78.0 77 c 7.0 0 32.0 88 d NaN 9 NaN 99 Deleting the column using the 'pop' function ab ef gh a 1.0 56.0 66 b 8.0 78.0 77 c 7.0 32.0 88 d NaN NaN 99
コードの解説
- まず必要なライブラリ(pandas)をインポートし、使いやすいように別名「pd」を付けています。
- キーと値のペアで構成される辞書を作成します。ここで各値は、実際にはSeries(一次元データ構造)になっています。
- 作成した辞書を、pandasライブラリの「DataFrame」関数に引数として渡し、データフレームを生成します。
- 「pop」関数を呼び出し、削除したい列名(この例では「cd」)を引数として渡すことで、該当する列を削除します。
- 最後に、列が削除された新しいデータフレームをコンソールに出力して確認します。
実行結果を見ると、「cd」列が完全に取り除かれ、残りの「ab」「ef」「gh」の3列だけが表示されていることがわかります。
補足: 出力に現れる「NaN」は「Not a Number(非数)」を意味し、該当する行・列の位置に有効な値が存在しないことを示しています。これは、元のSeriesのインデックスの長さが異なるために発生します。
-
Pythonでscikit-learnを使って画像のピクセル値を取得・表示する方法
データの前処理とは、さまざまなリソース(または単一のリソース)から収集したすべてのデータを、共通のフォーマットや統一されたデータセットへとまとめる作業を指します。現実世界のデータは決して完璧ではないため、欠損セルやエラー、外れ値、列間の不整合などが含まれている可能性があります。画像の場合も同様に、正しく配置されていなかったり、ぼやけていたり、ファイルサイズが非常に大きかったりすることがあります。前処理の目的は、こうした不整合やエラーを取り除くことにあります。画像のピクセル値を取得するには、組み込み関数「flatten」を使用します。画像を読み込んだ後、ピクセル値はデータフレームの形式で保存され
-
Pythonで画面に出力するには?print文の基本と使い方を解説
Pythonで画面(標準出力)に文字や値を表示する最も基本的な方法は、print文を使うことです。>>> print Hello, world Hello, worldカンマ区切りで複数の項目を出力する同じ行に複数の項目をスペースで区切って表示したい場合は、項目の間をカンマで区切ります。>>> print Hello,, World Hello, Worldこの例では、どちらの文字列にもスペースは含まれていませんが、2つのオブジェクトの間にあるカンマによって、print文が自動的にスペースを挿入してくれます。さまざまなデータ型の出力print文は文字列だけで