I am trying to filter a dataframe and get the rows that meet the filter criteria. I have been able to get a the first object from the dataframe by using the select function first and then calling the evaluate function to get the value:
df.select( (df['mycol1'] == filter_val1) & (df['mycol2'] == filter_val2))
x_axis_name = df.evaluate(df['x_axis_name'], selection=True).chunk(0)[0]
x_axis_id = df.evaluate(df['x_axis_id'], selection=True)[0]
y_axis_id = df.evaluate(df['y_axis_id'], selection=True)[0]
y_axis_name = df.evaluate(df['y_axis_name'], selection=True).chunk(0)[0]
First question: is there a better way to get a row than calling evaluate for each column?
Second question: how do I get a list for all of the rows that meet the filter criteria?
Does this fit your usecase:
Alternatively, if you need to gradually build an expression you are going to use to filter the dataframe, you can also do: