I’m trying to use the pandas negation operator ~
in one of my jinja2
templates but I believe its conflicting with their special operator ~
.
{% for row in df.loc[ ~(df['is_test_result_pass']) , : ].itertuples() %}
yields the following exception…
jinja2.exceptions.TemplateSyntaxError, unexpected '~'
I could do the operation on the python side and pass another variable with the negated selection but what’s the method name equivalent that the ~ operator maps to that I could invoke in the template.
Advertisement
Answer
Looks like even more than the ~
operator choked, I couldn’t use the column slice operator either :
, it would yield a SyntaxError: invalid syntax
when the template compiled
However both the following worked identically using the tip from @piRSquared….
{% for row in df.loc[ df['is_test_result_pass'].eq(False) ].itertuples() %} {% for row in df.loc[ df['is_test_result_pass'].__neg__() ].itertuples() %}