2
リストを使用してpysparkでデータフレームをフィルタリングしようとしています。私は、リストに基づいてフィルタリングするか、リストに値を持つレコードのみを含めたいと思います。以下の私のコードは動作しません: とValueError:pysparkデータフレームフィルタまたはリストに基づいてインクルードする
# define a dataframe
rdd = sc.parallelize([(0,1), (0,1), (0,2), (1,2), (1,10), (1,20), (3,18), (3,18), (3,18)])
df = sqlContext.createDataFrame(rdd, ["id", "score"])
# define a list of scores
l = [10,18,20]
# filter out records by scores by list l
records = df.filter(df.score in l)
# expected: (0,1), (0,1), (0,2), (1,2)
# include only records with these scores in list l
records = df.where(df.score in l)
# expected: (1,10), (1,20), (3,18), (3,18), (3,18)
は、次のエラーを与えるブール値に列を変換できません:、「と」は「&」を使用してください「|」 DataFrameのブール式を構築するときは 'or'、 '〜'は 'not'です。それは言う