📜  通过排除使用 isin 过滤 PySpark DataFrame

📅  最后修改于: 2022-05-13 01:54:59.043000             🧑  作者: Mango

通过排除使用 isin 过滤 PySpark DataFrame

在本文中,我们将讨论如何通过排除使用 isin 过滤 pyspark 数据帧。

isin():这用于查找给定数据帧中包含的元素,它获取元素并获取元素以匹配数据。

创建用于演示的数据框:

Python3
# importing module
import pyspark
  
# importing sparksession from pyspark.sql module
from pyspark.sql import SparkSession
  
# creating sparksession and giving an app name
spark = SparkSession.builder.appName('sparkdf').getOrCreate()
  
# list  of students  data  with null values
# we can define null values with none
data = [[1, "sravan", "vignan"],
        [2, "ramya", "vvit"],
        [3, "rohith", "klu"],
        [4, "sridevi", "vignan"],
        [5, "gnanesh", "iit"]]
  
# specify column names
columns = ['ID', 'NAME', 'college']
  
# creating a dataframe from the lists of data
dataframe = spark.createDataFrame(data, columns)
dataframe.show()


Python3
# get the ID : 1,2,3 from dataframe
dataframe.filter((dataframe.ID).isin([1,2,3])).show()


Python3
# get name as sravan
dataframe.filter((dataframe.NAME).isin(['sravan'])).show()


Python3
# get college as vignan
dataframe.where((dataframe.college).isin(['vignan'])).show()


Python3
# get ID except 1
dataframe.where(~(dataframe.ID).isin([1])).show()


输出:

方法一:使用filter()

filter():该子句用于检查条件并给出结果,两者相似

示例 1:使用 filter() 子句获取特定 ID

蟒蛇3

# get the ID : 1,2,3 from dataframe
dataframe.filter((dataframe.ID).isin([1,2,3])).show()

输出:



示例 2:从数据框列中获取名称。

蟒蛇3

# get name as sravan
dataframe.filter((dataframe.NAME).isin(['sravan'])).show()

输出:

方法 2:使用 Where()

where():该子句用于检查条件并给出结果

示例 1:使用 where() 子句获取特定大学。

蟒蛇3



# get college as vignan
dataframe.where((dataframe.college).isin(['vignan'])).show()

输出:

示例 2:从数据框中获取除 5 之外的 ID。

蟒蛇3

# get ID except 1
dataframe.where(~(dataframe.ID).isin([1])).show()

输出: