- 在数据分析中,我们常常要对一个feature内的数据进行计数,如以性别为分类依据,对数据中男性或女性sample的数量进行统计,而此时,巧用布尔值进行计数则是一个效率较高的方法。
原理
- 在动作脚本中(或者初学者直接理解为在Python中),布尔值返回的True与False会转换为1和0。所以,在统计单个量时,若规定符合条件的数据返回True而不符合条件的返回False,则将它们全部相加后即为所有True的数量。
实战实例
1.首先我们导入一个csv文件并检查它的首五行
import pandas as pd
ecom = pd.read_csv("Ecommerce Purchases.csv")
ecom.head()
在notebook中会得到以下结果
2.如果我们想知道有多少人的信用卡将在2025年过期,我们就可以通过以下代码实现。(How many people have a credit card that expires in 2025? )
注意:此处的过期日期数据在第七列CC Exp Date下,格式为 月/年 ,如 02/20的意思是该人的信用卡将在2020年2月过期。
sum(ecom['CC Exp Date'].apply(lambda x: x[3:]) == '25')
>>>1033
由此,我们便用一行代码实现了数据的有条件计数。