在dataframe中根据一定的条件,得到符合要求的某行元素所在的位置。
代码如下所示:
-
df = pd.DataFrame({
'BoolCol': [
1,
2,
3,
3,
4],
'attr': [
22,
33,
22,
44,
66]},
-
index=[
10,
20,
30,
40,
50])
-
print(df)
-
a = df[(df.BoolCol==
3)&(df.attr==
22)].index.tolist()
-
print(a)
df如下所示,以上通过选取“BoolCol”取值为3且“attr”取值为22的行,得到该行在df中的位置
注意:返回的位置为index列表,根据index的不同而不同,这点易于数组中默认的下标。
-
BoolCol
attr
-
10 1 22
-
20 2 33
-
30 3 22
-
40 3 44
-
50 4 66
-
[30]