パンダでデータフレームの複数の列スライスを取得する方法

愚かでいなさい

例えば、

from pandas import DataFrame
df = DataFrame(np.arange(8).reshape(1, 8), columns = list('abcdefgh'))

列 'b':'d' と 'f':'h' を選択したいと思います。両方を含めます。

次を実行して 'b':'d' を選択できることを知っています。

df2 = df.loc[:, 'b':'d']、しかしdf2 = df.loc[:, ['b':'d', 'f':'h']]、MATLABの構文のようなものはここでは機能しないので、データフレームで複数の列を選択するにはどうすればよいですか?

イズレエル

numpy.r_インデックスの連結に使用できますが、位置でのみ機能するため、get_locまたはsearchsorted+が必要ですiloc

df = pd.DataFrame(np.arange(8).reshape(1, 8), columns = list('abcdefgh'))
print (df)
   a  b  c  d  e  f  g  h
0  0  1  2  3  4  5  6  7

b = df.columns.get_loc('b')
d = df.columns.get_loc('d')
f = df.columns.get_loc('f')
h = df.columns.get_loc('h')
print (b,d,f,h)
1 3 5 7
b = df.columns.searchsorted('b')
d = df.columns.searchsorted('d')
f = df.columns.searchsorted('f')
h = df.columns.searchsorted('h')
print (b,d,f,h)
1 3 5 7

df = df.iloc[:, np.r_[b:c+1, f:h+1]]
print (df)
   b  c  d  f  g  h
0  1  2  3  5  6  7

次と同じです。

df =  df.iloc[:, np.r_[1:4, 5:8]]
print (df)
   b  c  d  f  g  h
0  1  2  3  5  6  7

df =  df.iloc[:, np.r_['b':'d', 'f':'h']]
print (df)
#TypeError: unsupported operand type(s) for -: 'str' and 'str'

loc+ を使用した別の解決策join:

df =  df.loc[:,'b':'d'].join(df.loc[:,'f':'h'])
print (df)
   b  c  d  f  g  h
0  1  2  3  5  6  7

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パンダでデータフレームの列スライスを取得する方法

分類Dev

パンダデータフレームのインデックスとして複数の列を使用する

分類Dev

パンダデータフレームからのmsアクセスで複数の行を更新する方法

分類Dev

列の値に従ってパンダのデータフレームをスライスする方法は?

分類Dev

パンダのデータフレームで複雑なスライスをベクトル化する

分類Dev

非インデックス列で複数のパンダデータフレームの共通部分を見つける方法

分類Dev

複数の列でパンダデータフレームをフィルタリングする方法

分類Dev

パンダシリーズ(インデックスに基づく)をデータフレームの複数の列にスライスします

分類Dev

複数の列からパンダのデータフレーム行の値のリストを作成する

分類Dev

パンダは複合インデックスでデータフレームの行番号を取得します

分類Dev

パンダのデータフレームで数値列名を取得する方法

分類Dev

パンダのデータフレームに複数のインデックスを作成する

分類Dev

プライムフェイスの複数のデータテーブルで同じリストをレンダリングする方法

分類Dev

パンダのデータフレームで複数のリストを0で埋める方法は?

分類Dev

パンダデータフレームからタプルの複数のリストを作成する方法

分類Dev

複数のパンダデータフレームで特定の修正列を選択する方法

分類Dev

パンダのデータフレームを複数のNamedTupleのリストに変換する方法

分類Dev

パンダデータフレームのインデックスの範囲を取得する方法

分類Dev

パンダの複数のID列で複数のデータフレームをマージする

分類Dev

パンダを使用して複数のインデックスでデータフレームを単純化する方法は?

分類Dev

パンダ:データフレームを同じスプレッドシートの複数のシートにスライスする

分類Dev

複数のdivクラス内からパンダデータフレームにデータをスクレイピングする

分類Dev

csvファイルを複数の列でパンダデータフレームに分割する

分類Dev

パンダのデータフレームの列の値をインプレースで変更する

分類Dev

パンダデータフレーム:インデックスで行を選択し、次の数行を取得する方法

分類Dev

Pythonでパンダのデータフレームに複数のラベルを追加する方法

分類Dev

パンダのデータフレームをスライスするための入力を求める方法

分類Dev

Pythonパンダは複数のインデックス範囲でデータフレームをスライスします

分類Dev

データフレーム内のすべての重複のインデックスを取得する方法(パンダ-Python)

Related 関連記事

  1. 1

    パンダでデータフレームの列スライスを取得する方法

  2. 2

    パンダデータフレームのインデックスとして複数の列を使用する

  3. 3

    パンダデータフレームからのmsアクセスで複数の行を更新する方法

  4. 4

    列の値に従ってパンダのデータフレームをスライスする方法は?

  5. 5

    パンダのデータフレームで複雑なスライスをベクトル化する

  6. 6

    非インデックス列で複数のパンダデータフレームの共通部分を見つける方法

  7. 7

    複数の列でパンダデータフレームをフィルタリングする方法

  8. 8

    パンダシリーズ(インデックスに基づく)をデータフレームの複数の列にスライスします

  9. 9

    複数の列からパンダのデータフレーム行の値のリストを作成する

  10. 10

    パンダは複合インデックスでデータフレームの行番号を取得します

  11. 11

    パンダのデータフレームで数値列名を取得する方法

  12. 12

    パンダのデータフレームに複数のインデックスを作成する

  13. 13

    プライムフェイスの複数のデータテーブルで同じリストをレンダリングする方法

  14. 14

    パンダのデータフレームで複数のリストを0で埋める方法は?

  15. 15

    パンダデータフレームからタプルの複数のリストを作成する方法

  16. 16

    複数のパンダデータフレームで特定の修正列を選択する方法

  17. 17

    パンダのデータフレームを複数のNamedTupleのリストに変換する方法

  18. 18

    パンダデータフレームのインデックスの範囲を取得する方法

  19. 19

    パンダの複数のID列で複数のデータフレームをマージする

  20. 20

    パンダを使用して複数のインデックスでデータフレームを単純化する方法は?

  21. 21

    パンダ:データフレームを同じスプレッドシートの複数のシートにスライスする

  22. 22

    複数のdivクラス内からパンダデータフレームにデータをスクレイピングする

  23. 23

    csvファイルを複数の列でパンダデータフレームに分割する

  24. 24

    パンダのデータフレームの列の値をインプレースで変更する

  25. 25

    パンダデータフレーム:インデックスで行を選択し、次の数行を取得する方法

  26. 26

    Pythonでパンダのデータフレームに複数のラベルを追加する方法

  27. 27

    パンダのデータフレームをスライスするための入力を求める方法

  28. 28

    Pythonパンダは複数のインデックス範囲でデータフレームをスライスします

  29. 29

    データフレーム内のすべての重複のインデックスを取得する方法(パンダ-Python)

ホットタグ

アーカイブ