Pandasisin和Notin的使用说明
Pandasisin和Notin的作用
Pandasisin和Notin是用于过滤数据的两个常用方法,可以筛选数据集中符合某些条件的数据,可以用于数据清洗或处理中。
Pandasisin和Notin的语法
pandasisin
函数的语法如下:
DataFrame.column_name.isin(values_list)
notin
函数的语法如下:
~DataFrame.column_name.isin(values_list)
其中,values_list
参数是一个列表,包含需要进行筛选的值。而在notin
函数中,利用~
符号对结果取反,表示只筛选不在列表中的值。
Pandasisin和Notin的示例
下面通过实例说明如何使用pandasisin
和notin
进行数据筛选。
示例1
假设我们有一个包含商品名称、价格和库存量的数据集,我们希望找到所有价格为50或100的商品信息。使用pandasisin
函数可以轻松实现:
import pandas as pd
data = {
'product': ['A', 'B', 'C', 'D', 'E'],
'price': [50, 30, 100, 80, 120],
'stock': [10, 20, 5, 7, 3]
}
df = pd.DataFrame(data)
result = df[df['price'].isin([50, 100])]
print(result)
输出结果如下所示:
product price stock
0 A 50 10
2 C 100 5
示例2
假设我们有一个包含多个城市旅游景点名称、评分和门票价格的数据集,我们希望找到4个城市的旅游景点信息,这四个城市分别是“北京”、“上海”、“广州”和“深圳”,使用notin
函数可以轻松实现:
import pandas as pd
data = {
'city': ['北京', '上海', '广州', '深圳', '成都', '重庆', '杭州', '南京', '武汉', '长沙'],
'attraction': ['故宫', '东方明珠', '长隆', '世界之窗', '宽窄巷子', '洪崖洞', '西湖', '中山陵', '黄鹤楼', '岳麓山'],
'score': [9.0, 8.8, 8.6, 9.2, 8.5, 8.7, 9.1, 8.9, 8.4, 8.3],
'price': [60, 110, 230, 280, 50, 60, 80, 90, 40, 70]
}
df = pd.DataFrame(data)
result = df[~df['city'].isin(['成都', '重庆', '杭州', '南京'])]
print(result)
输出结果如下所示:
city attraction score price
0 北京 故宫 9.0 60
1 上海 东方明珠 8.8 110
2 广州 长隆 8.6 230
3 深圳 世界之窗 9.2 280
8 武汉 黄鹤楼 8.4 40
9 长沙 岳麓山 8.3 70
如上所示,通过notin
函数,我们可以快速筛选掉四个城市的旅游景点,保留其他城市的数据信息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pandas is in和not in的使用说明 - Python技术站