Pythonでデータフレームの列を削除する方法をわかりやすく解説
データフレームとは
データフレーム(DataFrame)とは、行と列という表形式でデータを格納する二次元データ構造です。SQLのデータテーブルやExcelのシートと同じようなイメージで捉えることができます。データフレームから特定の列を削除するには、いくつかの方法があります。
本記事では、削除したい列名を引数として受け取り、その列を削除する「del」演算子の使い方を紹介します。
サンプルコード
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 'del' operator")
del my_df['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 'del' operator
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コードの解説
必要なライブラリをインポートし、扱いやすいように別名(エイリアス)を付けています。
キーと値で構成される辞書を作成しています。ここでいう値は、実際にはSeries(シリーズ)というデータ構造になっています。
この辞書は、その後pandasライブラリの「DataFrame」関数に引数として渡されます。
「del」キーワードを使用することで、特定の列を削除できます。
削除したい列の名前を、「del」演算子の引数として指定します。
列が削除された新しいデータフレームがコンソールに出力されます。
注意:「NaN」とは「Not a Number」の略で、該当する[行, 列]の位置に有効な値が存在しないことを意味します。
補足:drop()メソッドを使う方法
「del」演算子以外にも、pandasの「drop()」メソッドを使って列を削除できます。my_df.drop('cd', axis=1) のように記述し、axis=1 で列方向の操作であることを指定します。元のデータフレームを変更せずに新しいデータフレームを受け取りたい場合や、複数の列を一度に削除したい場合には、drop()メソッドが便利です。また、inplace=True を指定すれば、元のデータフレームを直接変更することも可能です。
-
Python Pandasでデータフレームの列の値をX軸ラベルとして設定する方法
PythonのPandasでデータフレームの列の値をX軸ラベルとして設定するには、plot()メソッドの引数にxticksを指定します。これにより、データの値をそのまま目盛りラベルとして表示できるため、グラフがより読みやすくなります。手順図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。Pandasを使って、column1というキーを持つデータフレームを作成します。plot()メソッドでデータフレームをプロットし、column1の値をX軸ラベルとして指定します。図を表示するには、show()メソッドを使用します。コード例import pandas as pd fro
-
Pythonでディレクトリを変更(cd)するにはどうすればよいですか?
Pythonでカレントディレクトリを変更する(シェルのcdコマンドと同じ操作を行う)には、標準ライブラリのosモジュールを使用します。osモジュールが提供するos.chdir()関数に、移動先のディレクトリの相対パスまたは絶対パスを引数として渡すことで、作業ディレクトリを切り替えることができます。使用例>>> import os >>> os.chdir(my_folder)この例では、現在の作業ディレクトリから「my_folder」という相対パスで指定されたディレクトリへ移動しています。絶対パス(例:/home/user/my_folder や C:\Us