パンダのデータフレーム列のリスト内を検索しています、エラー

jpf5046

状況1,000を超えるテーブルを持つデータベースで作業しているときにこの問題が発生しています。列名の値に基づいてテーブル名をフィルタリングしたいと思います。str.contains()データフレームでを実行しようとしていますが、エラーが発生します。エラー読み取り"None of [Float64Index([nan, nan, nan, nan, nan], dtype='float64')] are in the [columns]"ダミーデータでエラーを再現することができました。

私の目標は、列名「date」が含まれているため、「table5」にフィルタリングされたデータフレームを返すことです。

listoftables = ['table1', 'table2', 'table3', 'table4', 'table5']
columnnames = [['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['audit', 'auditrunlist', 'date']]


example = pd.DataFrame(
    {'TableName': listoftables,
     'col_names'  : columnnames
    })

example[(example['col_names'].str.contains('date'))]

リスト内の文字列を検索しているため、エラーが発生した思います私をさらに混乱させるのは、実行example[(example['col_names'].str.contains('[audit, auditrunlist, date]'))]すると同じエラーが発生することです。

リストはない列をもう1つ追加すると、期待どおりの結果が得られます。


listoftables = ['table1', 'table2', 'table3', 'table4', 'table5']
columnnames = [['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['age', 'name', 'school'], 
               ['audit', 'auditrunlist', 'date']]

no_list_columnnames = ['age, name, school', 
               'age name school', 
                'age name school', 
               'age name school', 
               'audit auditrunlist date']


example = pd.DataFrame(
    {'TableName': listoftables,
     'col_names'  : columnnames,
     'no_list_col_names' : no_list_columnnames
    })

# this returns what i expect
example[(example['no_list_col_names'].str.contains('date'))]

2つの結果があると思います。パンダのデータフレーム内のリスト内を検索する方法を見つけるか、パンダのデータフレーム内の列をリストから文字列に変換する方法を見つけることができます。

リストを列としてパンダのデータフレームをフィルタリングするためのより良い方法は何ですか?

ジュリオ

この問題を指摘してくれてありがとう、それは面白いです、

私のアプローチは、古典的な適用を使用してフラグを作成することです

df['flag']=df.apply(lambda x: 1 if 'date' in x['col_names'] else 0, axis=1)

フィルタリングした後:

df_filtered=df.loc[df['flag']==1,:]

おそらくそれらは賢いオプションが存在しますが、これはうまくいきます

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

パンダのデータフレーム列のリスト内を検索しています、エラー

分類Dev

文字列のパンダデータフレーム内の値カウントを検索します

分類Dev

データフレーム内の値を検索し、新しい列にエクスポートします

分類Dev

パンダのforループでデータフレームを検索し、リストを更新します

分類Dev

条件に基づいてパンダデータフレームの列の数を検索します

分類Dev

別の列のリストでパンダデータフレーム列の最も近い要素を検索します

分類Dev

パンダを使用してデータフレームを操作し、新しい列を作成し、データフレーム内の既存のデータの検索に基づいて値を入力します

分類Dev

パイソンパンダ:出力次いで、全体データフレーム内のサブストリングが発見されたカラム(複数可)の名前をサブストリングを検索します

分類Dev

列内の文字列を検索し、パンダのデータフレームに別の列を追加して文字列に言及します

分類Dev

pandasデータフレーム内の文字列のリストを検索し、各検索文字列を新しい列に追加します

分類Dev

パンダを使用してデータフレームの列の上位3つを検索します

分類Dev

リスト列に基づいて2つのパンダデータフレームを結合します

分類Dev

R:データフレーム内の列のリストの最大/最小を検索します

分類Dev

列内の個別の値のパンダデータフレームからリストを作成します

分類Dev

検索された列の値までのパンダのデータフレーム行を新しいデータフレームに分割します

分類Dev

リスト別のパンダデータフレーム検索列

分類Dev

データフレーム列パンダの検索リスト名

分類Dev

パンダのデータフレーム検索を高速化する方法を探しています

分類Dev

リストからデータフレーム列で部分的な文字列の一致を検索します-パンダ-Python

分類Dev

networkxを使用して視覚化するパンダデータフレーム内のエッジリスト

分類Dev

リスト内包表記(パンダ)を使用して、データフレームのリストからデータフレームの列を削除します

分類Dev

単語のリストで構成されるパンダデータフレームの2列で一般的な単語を検索します

分類Dev

リストから文字列を含むデータフレーム内の行を検索します

分類Dev

0未満のパンダデータフレームのエントリ数を計算しています

分類Dev

パンダデータフレーム:値を共有するエントリの検索(例:プレーヤーを含むすべてのゲーム)

分類Dev

文字列検索パンダを使用して、データフレーム内の追加の一致を省略します

分類Dev

列のリストのいずれかで文字列のリストのすべてを含むデータフレーム行を検索します

分類Dev

パンダのデータフレームから列のリスト以外をすべて選択します

分類Dev

パンダデータフレームのすべてのリスト列を分割します

Related 関連記事

  1. 1

    パンダのデータフレーム列のリスト内を検索しています、エラー

  2. 2

    文字列のパンダデータフレーム内の値カウントを検索します

  3. 3

    データフレーム内の値を検索し、新しい列にエクスポートします

  4. 4

    パンダのforループでデータフレームを検索し、リストを更新します

  5. 5

    条件に基づいてパンダデータフレームの列の数を検索します

  6. 6

    別の列のリストでパンダデータフレーム列の最も近い要素を検索します

  7. 7

    パンダを使用してデータフレームを操作し、新しい列を作成し、データフレーム内の既存のデータの検索に基づいて値を入力します

  8. 8

    パイソンパンダ:出力次いで、全体データフレーム内のサブストリングが発見されたカラム(複数可)の名前をサブストリングを検索します

  9. 9

    列内の文字列を検索し、パンダのデータフレームに別の列を追加して文字列に言及します

  10. 10

    pandasデータフレーム内の文字列のリストを検索し、各検索文字列を新しい列に追加します

  11. 11

    パンダを使用してデータフレームの列の上位3つを検索します

  12. 12

    リスト列に基づいて2つのパンダデータフレームを結合します

  13. 13

    R:データフレーム内の列のリストの最大/最小を検索します

  14. 14

    列内の個別の値のパンダデータフレームからリストを作成します

  15. 15

    検索された列の値までのパンダのデータフレーム行を新しいデータフレームに分割します

  16. 16

    リスト別のパンダデータフレーム検索列

  17. 17

    データフレーム列パンダの検索リスト名

  18. 18

    パンダのデータフレーム検索を高速化する方法を探しています

  19. 19

    リストからデータフレーム列で部分的な文字列の一致を検索します-パンダ-Python

  20. 20

    networkxを使用して視覚化するパンダデータフレーム内のエッジリスト

  21. 21

    リスト内包表記(パンダ)を使用して、データフレームのリストからデータフレームの列を削除します

  22. 22

    単語のリストで構成されるパンダデータフレームの2列で一般的な単語を検索します

  23. 23

    リストから文字列を含むデータフレーム内の行を検索します

  24. 24

    0未満のパンダデータフレームのエントリ数を計算しています

  25. 25

    パンダデータフレーム:値を共有するエントリの検索(例:プレーヤーを含むすべてのゲーム)

  26. 26

    文字列検索パンダを使用して、データフレーム内の追加の一致を省略します

  27. 27

    列のリストのいずれかで文字列のリストのすべてを含むデータフレーム行を検索します

  28. 28

    パンダのデータフレームから列のリスト以外をすべて選択します

  29. 29

    パンダデータフレームのすべてのリスト列を分割します

ホットタグ

アーカイブ