Skip to content Skip to sidebar Skip to footer

Pandas: How Can I Check Multiple Columns If There Are Any Values That Are Smaller Than Previous Value?

Solution for a single column is already provided here: Pandas: Check if column value is smaller than any previous column value. However, my dataset consists of many columns and I d

Solution 1:

We can use DataFrame.diff with DataFrame.lt

df.diff().lt(0).add_suffix('_diff')

   c_diff  d_diff  e_diff
0FalseFalseFalse1TrueFalseFalse2FalseFalseFalse3FalseFalseFalse4TrueTrueFalse5FalseFalseTrue

Solution 2:

You can operate on the whole dataframe:

df.lt(df.shift()).add_suffix('_diff')

gives you

   c_diff  d_diff  e_diff
0FalseFalseFalse1TrueFalseFalse2FalseFalseFalse3FalseFalseFalse4TrueTrueFalse5FalseFalseTrue

And you can join:

df.join(df.lt(df.shift()).add_suffix('_diff'))

which gives:

   c  d  e  c_diff  d_diff  e_diff
0358FalseFalseFalse1158TrueFalseFalse2568FalseFalseFalse3678FalseFalseFalse4219TrueTrueFalse5933FalseFalseTrue

Post a Comment for "Pandas: How Can I Check Multiple Columns If There Are Any Values That Are Smaller Than Previous Value?"