Pandas中的布尔索引
布尔索引帮助我们使用布尔向量从DataFrame中选择数据。我们需要一个带有布尔索引的DataFrame才能使用布尔索引。让我们看看如何实现布尔索引。
- 创建一个数据字典。
- 将其转换为一个DataFrame对象,并将布尔索引作为向量。
- 现在,使用布尔索引访问数据。
请看下面的示例以了解。
示例
import pandas as pd # data data = { 'Name': ['Hafeez', 'Srikanth', 'Rakesh'], 'Age': [19, 20, 19] } # creating a DataFrame with boolean index vector data_frame = pd.DataFrame(data, index = [True, False, True]) print(data_frame)
输出
如果您运行以上程序,您将获得以下结果。
Name Age True Hafeez 19 False Srikanth 20 True Rakesh 19
现在,我们可以通过向loc[]、iloc[]、ix[]方法传递布尔值来访问DataFrame。让我们一一看看。
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
示例
# accessing using .loc() print(data_frame.loc[True])
输出
如果运行以上代码,您将获得以下结果。
Name Age True Hafeez 19 True Rakesh 19
示例
# accessing using .iloc() print(data_frame.iloc[1]) # iloc methods takes only integers so, we are passing 1 i nsted of True. Both are same.
输出
如果运行以上代码,您将获得以下结果。
Name Srikanth Age 20 dtype: object
示例
# accessing using .ix[] # we can pass both boolean or integer values to .ix[] print(data_frame.ix[True]) print() print(data_frame.ix[1])
输出
如果运行以上代码,您将获得以下结果。
Name Age True Hafeez 19 True Rakesh 19 Name Srikanth Age 20 dtype: object
使用布尔索引的另一种方法是将布尔向量直接传递给DataFrame。它将打印所有值为True的行。让我们看一个例子。
示例
import pandas as pd # data data = { 'Name': ['Hafeez', 'Srikanth', 'Rakesh'], 'Age': [19, 20, 19] } # creating a DataFrame with boolean index vector data_frame = pd.DataFrame(data) print(data_frame)
输出
如果运行以上代码,您将获得以下结果。
Name Age 0 Hafeez 19 1 Srikanth 20 2 Rakesh 19
现在,我们可以将布尔向量传递给DataFrame来访问数据。
示例
# passing boolean vector to data_frame index print(data_frame[[True, True, False]])
输出
如果运行以上代码,您将获得以下结果。我们只得到了值为**True**的行。
Name Age 0 Hafeez 19 1 Srikanth 20
结论
如果您对布尔索引有任何疑问,请在评论区告诉我。
广告