title: Get Trend/Streak in Each Row of Pandas DataFrame
body: <p>I have a Pandas DataFrame:</p>
  
  <pre><code>df = pd.DataFrame([['A', 0.1, 2.0, 1.0, 0.5, 0.3],
                     ['B', -0.3, -0.4, 0.1, 0.2, -1.0],
                     ['C', 0.1, -1.0, 4.0, -3.3, 1.0],
                     ['D', -0.1, -1.0, -4.0, -3.3, -1.0],
                     ['E', np.nan, np.nan, np.nan, np.nan, np.nan],
                     ['F', 4.0, np.nan, np.nan, np.nan, np.nan]
                    ], columns=['Group', '1', '2', '3', '4', '5'])
  
  
    Group    1    2    3    4    5  
  0     A  0.1  2.0  1.0  0.5  0.3  
  1     B -0.3 -0.4  0.1  0.2 -1.0  
  2     C  0.1 -1.0  4.0 -3.3  1.0  
  3     D -0.1 -1.0 -4.0 -3.3 -1.0  
  4     E  NaN  NaN  NaN  NaN  NaN  
  5     F  4.0  NaN  NaN  NaN  NaN  
  </code></pre>
  
  <p>For each row, I'd like to return the trend/streak of either consecutive positive/negative values going from left to right. So, the final DataFrame should be:</p>
  
  <pre><code>  Group    1    2    3    4    5  Streak  
  0     A  0.1  2.0  1.0  0.5  0.3       5   
  1     B -0.3 -0.4  0.1  0.2 -1.0      -2   
  2     C  0.1 -1.0  4.0 -3.3  1.0       1   
  3     D -0.1 -1.0 -4.0 -3.3 -1.0      -5   
  4     E  NaN  NaN  NaN  NaN  NaN       0    
  5     F  4.0  NaN  NaN  NaN  NaN       1 
  </code></pre>
  
  <p>The first row has a streak of +5 because the values are all positive going from left to right. The second row has a streak of negative -2 because the first two columns have negative values and the streak ends with a positive value in column 3. The third row has a streak of +1 because the second column has an opposite sign from the first column. The fourth row is all NaN and so the streak is zero.</p>