Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Pyspark:过滤DataaFrame,其中列值等于行对象列表中的某个值_Apache Spark_Pyspark_Apache Spark Sql_Pyspark Sql - Fatal编程技术网

Apache spark Pyspark:过滤DataaFrame,其中列值等于行对象列表中的某个值

Apache spark Pyspark:过滤DataaFrame,其中列值等于行对象列表中的某个值,apache-spark,pyspark,apache-spark-sql,pyspark-sql,Apache Spark,Pyspark,Apache Spark Sql,Pyspark Sql,我有一个pyspark.sql.Row对象列表,如下所示: [Row(artist=1255340), Row(artist=942), Row(artist=378), Row(artist=1180), Row(artist=813)] 从具有模式的(id,name)的数据帧中,我想筛选出id等于列表给定行中某个艺术家的行。正确的方法是什么 为了进一步澄清,我想做一些类似的事情:从dataframe中选择row.id位于row对象列表中的row主要问题是row对象列表有多大。如果它很小,那

我有一个
pyspark.sql.Row
对象列表,如下所示:

[Row(artist=1255340), Row(artist=942), Row(artist=378), Row(artist=1180), Row(artist=813)]
从具有模式的
(id,name)
数据帧
中,我想
筛选出
id等于列表给定行中某个艺术家的行
。正确的方法是什么


为了进一步澄清,我想做一些类似的事情:
从dataframe中选择row.id位于row对象列表中的row

主要问题是row对象列表有多大。如果它很小,那么@Karthik Ravindra提供的链接

如果它很大,那么您可以使用行对象的数据帧。在dataframe和dataframe_of_row_对象之间进行内部连接,并使用dataframe_of_row_对象中的艺术家列和原始dataframe中的id列。这将基本上删除不在\u行\u对象的dataframe\u中的任何id


当然,使用联接速度较慢,但更灵活。对于不小但仍然小到可以放入内存的列表,您可以使用广播提示来获得更好的性能。

这里有一种方法:@KarthikRavindra非常感谢:)