Pandas dataframe の列をループする方法


次の基本構文を使用して、pandas DataFrame の列を反復処理できます。

 for name, values in df. iteritems ():
  print (values)

次の例は、実際に次の pandas DataFrame でこの構文を使用する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19],
                   ' assists ': [5, 7, 7, 9, 12],
                   ' rebounds ': [11, 8, 10, 6, 6]})

#view DataFrame
df

	points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

例 1: DataFrame のすべての列を反復処理する

次のコードは、pandas DataFrame の各列を反復処理する方法を示しています。

 for name, values in df. iteritems ():
print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 5
1 7
2 7
3 9
4 12
Name: assists, dtype: int64
0 11
1 8
2 10
3 6
4 6
Name: rebounds, dtype: int64

次の構文を使用して各列をループし、列名のみを出力することもできます。

 for name, values in df. iteritems ():
print (name)

points
assists
rebounds

例 2: 特定の列を反復処理する

次の構文は、pandas DataFrame の特定の列を反復処理する方法を示しています。

 for name, values in df[[' points ', ' rebounds ']]. iteritems ():
  print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 11
1 8
2 10
3 6
4 6
Name: rebounds, dtype: int64

次の構文を使用して、特定の列の範囲を反復処理することもできます。

 for name, values in df. iloc [:, 0:2] . iteritems ():
  print (values)

0 25
1 12
2 15
3 14
4 19
Name: points, dtype: int64
0 5
1 7
2 7
3 9
4 12
Name: assists, dtype: int64

iteritems()関数の完全なドキュメントはここにあります。

追加リソース

Pandas で選択した列に関数を適用する方法
Pandasで列の順序を変更する方法
Pandasでインデックスによって列を削除する方法

コメントを追加する

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