下面是一份关于利用Pandas读取表格行数据判断是否相同的方法的完整实例教程。
样例数据介绍
为了演示我们的方法,我们将使用一个包含5个字段的样例数据,数据内容如下图所示:
Name | Gender | Age | Province | City |
---|---|---|---|---|
Tom | Male | 25 | Beijing | Haidian |
Lily | Female | 22 | Shanghai | Huangpu |
Jack | Male | 26 | Beijing | Chaoyang |
Rose | Female | 24 | Guangdong | Shenzhen |
Jack | Male | 26 | Beijing | Chaoyang |
我们要使用Pandas读取这张表格数据,并且对其中的每一行进行比较判断,看看是否有重复的行。
读取表格数据
首先,需要用Pandas读取表格数据。可以通过read_excel()
函数完成:
import pandas as pd
df = pd.read_excel("data.xlsx")
其中,data.xlsx
是我们的excel文件名,这个文件和我们的代码位于同一个目录下。
判断行数据是否重复
判断行数据是否重复,最简单的方法是使用duplicated()
函数,该函数会返回一个布尔型Series,标识了每一个行是否是重复行。如果该行数据重复,返回True,否则返回False。
duplicated = df.duplicated()
print(duplicated)
输出的结果是一个Series,内容如下所示:
0 False
1 False
2 False
3 False
4 True
dtype: bool
可以看到,第5行的数据被标记为True,说明该行的数据和前面某一行数据相同,是重复的。
也可以指定要比较的字段,用duplicated()
函数的subset
参数实现,比如只比较Province
和City
两个字段,可以这样写:
duplicated = df.duplicated(subset=["Province", "City"])
print(duplicated)
输出结果如下所示:
0 False
1 False
2 False
3 False
4 True
dtype: bool
删除重复行
删除重复行的方法,可以使用drop_duplicates()
函数。该函数会将DataFrame中的重复行删除,保留第一行出现的数据行,并返回一个新的DataFrame对象。
new_df = df.drop_duplicates()
print(new_df)
输出结果如下所示:
Name | Gender | Age | Province | City |
---|---|---|---|---|
Tom | Male | 25 | Beijing | Haidian |
Lily | Female | 22 | Shanghai | Huangpu |
Jack | Male | 26 | Beijing | Chaoyang |
Rose | Female | 24 | Guangdong | Shenzhen |
可以看到,第5行的数据被删除了。
总结
以上就是利用Pandas读取表格行数据判断是否相同的方法的完整实例教程。在实际开发中,我们常常需要对表格数据进行去重、筛选等操作,Pandas提供了非常便捷的方法,可以大大提高我们处理数据的效率。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用Pandas读取表格行数据判断是否相同的方法 - Python技术站