How frustrating is my movie?
JavaScript (Node.js), 61 55 54 bytes

Saved 1 byte thanks to @nwellnhof

Takes input as an array of characters.

s=&gt;s.map(p=c=&gt;r+=p&gt;(p=(+c?~c:1-Buffer(c)[0])%6),r=0)|r


Try it online!

How?

For all characters but digits greater than \$0\$, the 0-indexed column \$x\$ is given by:

$$x=(c-1)\bmod 6$$

where \$c\$ is the ASCII code of the character.

For positive digits \$n\$, we need to do instead:

$$x=(n+1)\bmod 6$$

Examples:

"a" --&gt; (97 - 1) mod 6 = 96 mod 6 = 0
"b" --&gt; (98 - 1) mod 6 = 97 mod 6 = 1
"0" --&gt; (48 - 1) mod 6 = 47 mod 6 = 5
"3" --&gt; ( 3 + 1) mod 6 =  4 mod 6 = 4


Commented

s =&gt;                       // s = input string (as array)
  s.map(p =                // initialize p to a non-numeric value
  c =&gt;                     // for each character c in s:
    r +=                   //   update the result r:
      p &gt; (                //   compare p with
        p = (              //   the new value of p defined as:
          +c ?             //     if c is a positive digit:
            ~c             //       -(int(c) + 1)
          :                //     else:
            1-Buffer(c)[0] //       -(ord(c) - 1)
        ) % 6              //     apply modulo 6
      ),                   //   yields 1 if the previous value is greater than the new one
    r = 0                  //   start with r = 0
  ) | r                    // end of map(); return r