1
カラム名のリストがあり、それらのカラムの値がゼロより大きい場合にローをフィルタリングしたい場合は、これに似たものがありますか?PySpark Dataframes:複数の条件をコンパクトコードでフィルタリングする方法は?
columns = ['colA','colB','colC','colD','colE','colF']
new_df = df.filter(any([df[c]>0 for c in columns]))
これが返されます。
ValueError: Cannot convert column into bool: please use '&' for 'and', '|' for 'or', '~' for 'not' when building DataFrame boolean expressions
を私は負の数を持っていないので、私は(1列のみにこれらの列とフィルタを合計することができます。しかし、私は和トリックwouldnを持っていた場合は推測します。私は合計よりも異なる別の条件でこれらの列をフィルタリングするために持っていた場合はとにかく「トン仕事と、どのように私は私がやりたいことができ 任意のアイデア
それはよりpythonista/pandistaソリューションはよりよいだっただろうにもかかわらず、動作します、それが存在する場合。 – foebu
@foebuは私の答えを更新しました – eliasah
は 'lit'で' list'ですか?もしそうなら、私は 'bool object not iterable'を取得します。私は2番目のソリューションを動作させることはできません。 – foebu