演算子「and」および/または「or」を使用して2つのフィルタリングされたリストをマップする方法

madik_atma

私は次の2つのリストを持っています:

advanced_filtered_list_val1 = [row for row in cleaned_list if float(row[val1]) < wert1]

advanced_filtered_list_val2 = [row for row in cleaned_list if float(row[val2]) < wert2]

オプションおよび/またはまたはを使用して、フィルタリングされたリストをリストにマップするにはどうすればよいですか?

リスト内のデータは辞書であり、このリスト内のいくつかの行を検索してフィルタリングします。で2つの値をフィルタリングしたいと思います。これは正常に機能します。しかし、どうすればこれをマップしてリストでフィルタリングできますか?

私は次のことを試みました:

select = int(input())

#and operation
if select == 1:
    mapped_list = [row for row in advanced_filtered_list_val1 and advanced_filtered_list_val2]
    for x in mapped_list:
        print(x)
#or operation
if select == 2:
    mapped_list = [row for row in advanced_filtered_list_val1 or advanced_filtered_list_val2]
    for x in mapped_list:
        print(x)

次のようにデータをインポートします。

faelle = [{k: v for k, v in row.items()}


for row in csv.DictReader(csvfile, delimiter=";")]

からwert1wert2およびから、wert1またはからフィルタリングしますwert2つまり、and句では両方のフィルタにある必要がtrueあり、or句ではまたはのいずれかであるwert1必要がありますwert2 True

生き続ける

cleaned_list2つのwert類似条件(AND)または少なくとも1つ(OR)のいずれかを尊重する辞書をフィルタリングする必要がありますあなたにできることは

import operator as op
ineq_1    = 'gt'
ineq_2    = 'lt'
select    = 2
andor = {
    1:lambda L: filter(
        lambda d: getattr(op,ineq_1)(float(d[val1]), wert1)
                  and getattr(op,ineq_2)(float(d[val2]), wert2),
        L
    ),
    2:lambda L: filter(
        lambda d: getattr(op,ineq_1)(float(d[val1]), wert1)
                  or getattr(op,ineq_2)(float(d[val2]), wert2),
        L
    ),
}

mapped_list = andor[select](cleaned_list)
for x in mapped_list:
    print(dict(x))

可能な選択肢は、gt(より大きい)、lt(より小さい)、またはeqです。


メソッド and_ or_ python-builtinモジュール を使用することで、物事をもう少し「動的」にすることもできることに注意してください operator たとえば、

#Where the two following ix2-like stuffs are defined to make
# a correspondence between names one knows, and methods of the
#  module operator.
ix2conj = {
    1:'and_',
    2:'or_',
}
ix2ineq = {
    '<' :'lt',
    '==':'eq',
    '>' :'gt',
}
def my_filter(conjunction, inequality1, inequality2, my_cleaned_list):
    return filter(
        lambda d: getattr(op, ix2conj[conjunction])(
                       getattr(op, ix2ineq[inequality1])(float(d[val1]), wert1),
                       getattr(op, ix2ineq[inequality2])(float(d[val2]), wert2)
                       ),
        my_cleaned_list
        )

ineq_1    = '>'
ineq_2    = '<'
select    = 2
print(my_filter(select, ineq_1, ineq_2, cleaned_list))

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

Lodashを使用してネストされたプロパティを検索およびフィルタリングする方法は?

分類Dev

ラムダ式とストリーム API または別の方法を使用して、JSP または JSTL で 2 つのリストを解析およびフィルタリングする方法は?

分類Dev

ストリームを使用してJavaマップを変換およびフィルタリングする

分類Dev

AWS CLIおよびJMESPathは、ネストされたプロパティをフィルタリングして選択します

分類Dev

複数の 'および' 'または'条件でリストをフィルタリングする方法

分類Dev

Reactでは、mongoからページに2つのリストを呼び出し、1つをクリックして、他に表示されているものをフィルタリングしたいと思います。

分類Dev

R:「等しくない」演算子dplyr / subsetを使用した2つの列によるフィルタリング

分類Dev

ストリームを使用してJavaでオブジェクトのコレクションをマップおよびフィルタリングするためのベストプラクティス

分類Dev

フェニックスは、結合およびプリロードされたデータを使用してjsonをレンダリングします

分類Dev

マトリックスで回転およびスケーリングされたビットマップの中心位置を見つける方法は?

分類Dev

一意の値を出力するためにフィルタリングおよびマップしようとしています

分類Dev

すべてのエントリを組み合わせたスタックおよびグループ化されたグラフggplot2

分類Dev

マルチスレッドまたはその他の.NETテクノロジを使用して、ネットワーク、ディスク、およびプロセッサを集中的に使用するジョブを実行するプログラムをスケーリングするにはどうすればよいですか?

分類Dev

jqueryまたはjavascriptを使用して2つのチェックボックスがオンになっている場合、divのリストをフィルタリングするにはどうすればよいですか?

分類Dev

FFMpeg:PIPとしてマージされた2つのビデオクリップの2つのオーディオストリームをマージする方法、オーディオは特定のタイミングオフセットで開始します

分類Dev

selectステートメントを使用してリンクされたリストのコンテンツをフィルタリングする方法は?

分類Dev

シェルスクリプト内のパターンマッチングにgrepおよび論理演算子を使用する

分類Dev

1つのステートメントでSwitchMapを使用してフィルタリングおよびマッピングするにはどうすればよいですか?

分類Dev

リスト内の深くネストされたマップをフィルタリングするにはどうすればよいですか?

分類Dev

Javascriptを使用してJSONをマッピングおよびフィルタリングする方法

分類Dev

どのプロセスがイベントをフィルタリングまたは再割り当てしているかを確認する方法はありますか?および/またはOSはこれを自分で行うことができますか?

分類Dev

AND / OR演算子を使用してリスト/クエリをフィルタリングする方法AWSAmplify JavaScript GraphQL

分類Dev

ビット演算子を使用して2つのブール値をインターリーブする方法は?

分類Dev

forループに「、」演算子が含まれる2つのライナーCソリューションが見つかりました。誰かが、指定されたコンマ演算子ステートメントを説明できますか?

分類Dev

ODataクエリは、AND / OR演算子を使用したネストされたフィルターをサポートしていますか?

分類Dev

Lodashを使用してネストされた配列をフィルタリングする方法は?

分類Dev

LIKE演算子と%%演算子を使用して、Webフォームでデータをクエリおよびフィルタリングするにはどうすればよいですか?

分類Dev

フラットマップを使用して、コレクション内の値をフィルタリングおよび計算します

分類Dev

APIを介してソートおよびフィルタリングされていないデータベースデータをページ付けするための最良の方法は何ですか?

Related 関連記事

  1. 1

    Lodashを使用してネストされたプロパティを検索およびフィルタリングする方法は?

  2. 2

    ラムダ式とストリーム API または別の方法を使用して、JSP または JSTL で 2 つのリストを解析およびフィルタリングする方法は?

  3. 3

    ストリームを使用してJavaマップを変換およびフィルタリングする

  4. 4

    AWS CLIおよびJMESPathは、ネストされたプロパティをフィルタリングして選択します

  5. 5

    複数の 'および' 'または'条件でリストをフィルタリングする方法

  6. 6

    Reactでは、mongoからページに2つのリストを呼び出し、1つをクリックして、他に表示されているものをフィルタリングしたいと思います。

  7. 7

    R:「等しくない」演算子dplyr / subsetを使用した2つの列によるフィルタリング

  8. 8

    ストリームを使用してJavaでオブジェクトのコレクションをマップおよびフィルタリングするためのベストプラクティス

  9. 9

    フェニックスは、結合およびプリロードされたデータを使用してjsonをレンダリングします

  10. 10

    マトリックスで回転およびスケーリングされたビットマップの中心位置を見つける方法は?

  11. 11

    一意の値を出力するためにフィルタリングおよびマップしようとしています

  12. 12

    すべてのエントリを組み合わせたスタックおよびグループ化されたグラフggplot2

  13. 13

    マルチスレッドまたはその他の.NETテクノロジを使用して、ネットワーク、ディスク、およびプロセッサを集中的に使用するジョブを実行するプログラムをスケーリングするにはどうすればよいですか?

  14. 14

    jqueryまたはjavascriptを使用して2つのチェックボックスがオンになっている場合、divのリストをフィルタリングするにはどうすればよいですか?

  15. 15

    FFMpeg:PIPとしてマージされた2つのビデオクリップの2つのオーディオストリームをマージする方法、オーディオは特定のタイミングオフセットで開始します

  16. 16

    selectステートメントを使用してリンクされたリストのコンテンツをフィルタリングする方法は?

  17. 17

    シェルスクリプト内のパターンマッチングにgrepおよび論理演算子を使用する

  18. 18

    1つのステートメントでSwitchMapを使用してフィルタリングおよびマッピングするにはどうすればよいですか?

  19. 19

    リスト内の深くネストされたマップをフィルタリングするにはどうすればよいですか?

  20. 20

    Javascriptを使用してJSONをマッピングおよびフィルタリングする方法

  21. 21

    どのプロセスがイベントをフィルタリングまたは再割り当てしているかを確認する方法はありますか?および/またはOSはこれを自分で行うことができますか?

  22. 22

    AND / OR演算子を使用してリスト/クエリをフィルタリングする方法AWSAmplify JavaScript GraphQL

  23. 23

    ビット演算子を使用して2つのブール値をインターリーブする方法は?

  24. 24

    forループに「、」演算子が含まれる2つのライナーCソリューションが見つかりました。誰かが、指定されたコンマ演算子ステートメントを説明できますか?

  25. 25

    ODataクエリは、AND / OR演算子を使用したネストされたフィルターをサポートしていますか?

  26. 26

    Lodashを使用してネストされた配列をフィルタリングする方法は?

  27. 27

    LIKE演算子と%%演算子を使用して、Webフォームでデータをクエリおよびフィルタリングするにはどうすればよいですか?

  28. 28

    フラットマップを使用して、コレクション内の値をフィルタリングおよび計算します

  29. 29

    APIを介してソートおよびフィルタリングされていないデータベースデータをページ付けするための最良の方法は何ですか?

ホットタグ

アーカイブ