Pandas 如何使用.loc属性访问DataFrame元素
“.loc”是pandas.DataFrame的一个属性,用于根据行/列标签索引从DataFrame中访问元素。它的工作方式类似于pandas.DataFrame的“at”属性,但区别在于,“at”属性用于访问单个元素,而“loc”属性可以访问一组元素。
“.loc”属性允许输入整数值、整数值列表、带有整数的切片对象和布尔数组等。如果在DataFrame中找不到指定的标签,它将引发一个KeyError。
示例1
在下面的示例中,我们使用Python字典及其键值对创建了一个名为“df”的pandas DataFrame。在这里,使用index参数指定了索引标签。
# importing pandas package
import pandas as pd
# create a Pandas DataFrame
df = pd.DataFrame({'B':['black','Blue'], 'W':['white','wine'],'R':['red', 'rose dust'],'G':['green','gray']},
index=['row1','row2'])
print("DataFrame:")
print(df)
# get the elements by labels
result = df.loc['row2', 'W']
print("Output:")
print(result)
输出
下面是输出结果:
DataFrame:
B W R G
row1 black white red green
row2 Blue wine rose dust gray
Output:
wine
我们通过指定行/列标签到loc
属性成功地从DataFrame“df”中访问了单个元素。
示例2
在这里,我们将通过向“loc”属性提供标签列表来访问pandas.DataFrame中的元素组。
# importing pandas package
import pandas as pd
# create a Pandas DataFrame
df = pd.DataFrame({'B':['black','Blue'], 'W':['white','wine'],'R':['red', 'rose dust'],'G':['green','gray']},
index=['row1','row2'])
print("DataFrame:")
print(df)
# set the elements by labels
result = df.loc[['row1','row2']]
print("Output:")
print(result)
输出
下面是输出结果:
DataFrame:
B W R G
row1 black white red green
row2 Blue wine rose dust gray
Output:
B W R G
row1 black white red green
row2 Blue wine rose dust gray
通过使用“loc”属性,loc属性成功地访问了pandas DataFrame中的两行元素(row1和row2)。结果,它返回了一个新的DataFrame,该DataFrame显示在上面的输出块中。