Pandasでインデックスによって列を削除する方法


次の構文を使用して、インデックス番号によって pandas DataFrame から列を削除できます。

 #drop first column from DataFrame
df. drop ( df.columns [0], axis= 1 , inplace= True )

また、次の構文を使用して、インデックス番号によって pandas DataFrame から複数の列を削除できます。

 #drop first, second, and fourth column from DataFrame
cols = [0, 1, 3]
df. drop (df. columns [cols], axis= 1 , inplace= True )

DataFrame に重複した列名がある場合は、次の構文を使用してインデックス番号で列を削除できます。

 #define list of columns
cols = [x for x in range( df.shape [1])]

#drop second column
collars. remove (1)

#view resulting DataFrame
df. iloc [:, cols]

次の例は、実際にインデックスによって列を削除する方法を示しています。

例 1: インデックスによる列の削除

次のコードは、pandas DataFrame から最初の列を削除する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]})

#drop first column from DataFrame
df. drop ( df.columns [0], axis= 1 , inplace= True )

#view resulting dataFrame
df

        first last points
0 Dirk Nowitzki 26
1 Kobe Bryant 31
2 Tim Duncan 22
3 LeBron James 29

例 2: インデックスによる複数の列の削除

次のコードは、インデックスによって pandas DataFrame 内の複数の列を削除する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]})

#drop first, second and fourth columns from DataFrame
cols = [0, 1, 3] 
df. drop (df. columns [cols], axis= 1 , inplace= True )

#view resulting dataFrame
df

        last
0 Nowitzki
1 Bryant
2 Duncan
3 James

例 3: 重複のあるインデックスによる列の削除

次のコードは、重複する列名が存在する場合に、pandas DataFrame 内のインデックス番号によって列を削除する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]},
                   columns=[' team ', ' last ', ' last ', ' points '])

#define list of columns range
cols = [x for x in range( df.shape [1])]

#remove second column in DataFrame
collars. remove (1)

#view resulting DataFrame
df. iloc [:, cols]

	team last points
0 Mavs Nowitzki 26
1 Lakers Bryant 31
2 Spurs Duncan 22
3 Cavs James 29

追加リソース

Pandas で 2 つの列を結合する方法
パンダ: 列を名前で並べ替える方法
パンダ: 2 つの列の違いを見つける方法
Pandas: 条件に基づいて列を追加する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です