【发布时间】:2021-07-17 07:09:01
【问题描述】:
你知道如何在 pandas DataFrame 中搜索行数据条目吗?理想情况下,在数据框中搜索部分行条目。
就像我有一个行条目一样:
row_entry = ['ven', 'lar', 'cin', 'por']
还有一个数据框 rows_df:
rows_df =
value1 value2 value3 value4 value5
14 foo fir tar har 0.110000
15 bar der ars go 0.510000
16 gal der ben den 0.310000
17 ven lar cin por 0.140000
18 go bun por fran 0.560000
第 17 行将被选中。这无需使用一系列 if 子句。
result =
value1 value2 value3 value4 value5
17 ven lar cin por 0.140000
我尝试过的(并且有效)是:
rows_df[(rows_df['value1'] == 'ven')
& (rows_df['value2'] == 'lar')
& (rows_df['value3'] == 'cin')
& (rows_df['value4'] == 'por')]
理想情况下,我不需要指定哪些是列名,或者指定值的顺序。我正在考虑类似.isin() 子句的内容,但使用的是每一行而不是列。
就像(不起作用):
df.loc[df.isin(some_values, axis=1)]
还查看了 iloc 和 loc 函数,但也许我失去了一些东西。
谢谢!
【问题讨论】:
标签: python pandas dataframe rows data-manipulation