如何在 pandas DataFrame 的 .loc 属性中应用切片索引器?
loc 是 pandas DataFrame 构造函数中的一个属性,用于根据行/列标签索引访问 DataFrame 的元素。
.loc 属性采用 DataFrame 行和列的标签来访问元素组。
.loc 属性允许整数、整数列表、带整数的切片对象以及布尔数组等作为输入。如果 DataFrame 中找不到指定的标签,则会引发 KeyError。
示例 1
在下面的示例中,我们已将切片索引器应用于 loc 属性,以访问第 1-3 行的值。此处包含起始值和结束值。
# importing pandas package import pandas as pd # create a Pandas DataFrame df = pd.DataFrame({'Country':['Brazil','Canada','New Zealand','Iceland', 'India', 'Sri Lanka', 'United States'], 'Capital': [ 'Belmopan','Ottawa','Wellington','Reykjavik', 'New Delhi','Colombo', 'Washington D.C']}) print("DataFrame:") print(df) # Access the elements using slicing indexer result = df.loc[1:3] print("Output:") print(result)
输出
输出如下所示:
DataFrame: Country Capital 0 Brazil Belmopan 1 Canada Ottawa 2 New Zealand Wellington 3 Iceland Reykjavik 4 India New Delhi 5 Sri Lanka Colombo 6 United States Washington D.C Output: Country Capital 1 Canada Ottawa 2 New Zealand Wellington 3 Iceland Reykjavik
loc 属性成功访问了 3 行 (1-3) 的元素。
示例 2
现在,我们可以应用切片索引器来选择多行标签和列中的单个标签。
# importing pandas package import pandas as pd # create a Pandas DataFrame df = pd.DataFrame([['a','b'],['c','d'],['e','f'],['g','h']], columns=['col1','col2'], index = ['r1','r2','r3','r4']) print("DataFrame:") print(df) # Access the elements using slicing indexer result = df.loc['r1':'r3','col1'] print("Output:") print(result)
输出
输出如下所示:
DataFrame: col1 col2 r1 a b r2 c d r3 e f r4 g h Output: r1 a r2 c r3 e Name: col1, dtype: object
我们可以注意到,切片的起始和结束位置都包含在选择行标签中。
广告