title: pandas rolling mean returns different results on different machines
body: <p>I'm running the same code on the same input on my local machine(Python 3.9.5, pandas 0.25.3)  and on a remote machine (Python 3.7.4, pandas 0.25.1) and I'm receiving different results.</p>
  <p>The input is:</p>
  <pre><code>jsn_str = '{&quot;user_1&quot;:{&quot;77&quot;:4514.0,&quot;44&quot;:7867.54,&quot;67&quot;:10406.54,&quot;12&quot;:7151.0,&quot;56&quot;:1921.0,&quot;36&quot;:9471.0,&quot;47&quot;:2021.0,&quot;25&quot;:3211.0,&quot;26&quot;:2021.0,&quot;15&quot;:4651.0,&quot;71&quot;:8805.0,&quot;62&quot;:352.0}}'
  </code></pre>
  <p>I use the code:</p>
  <pre><code>pd.DataFrame(json.loads(jsn_str), index=(str(x) for x in range(93))).fillna(method='ffill').fillna(0).sum(axis=1).rolling(window=1).mean().fillna(0).unique()
  </code></pre>
  <p>on my local machine I receive the expected result which is:</p>
  <pre><code>array([    0.  ,  7151.  ,  4651.  ,  3211.  ,  2021.  ,  9471.  ,
          7867.54,  1921.  ,   352.  , 10406.54,  8805.  ,  4514.  ])
  </code></pre>
  <p>but on the remote machine, the result is:</p>
  <pre><code>array([    0.  ,  7151.  ,  4651.  ,  3211.  ,  **2021.**  ,  9471.  ,
          **7867.54**,  **7867.54**,  **2021.**  ,  1921.  ,   352.  , 10406.54,
          8805.  ,  4514.  ])
  </code></pre>
  <p>I get 1 more appearance of 2021. and 7867.54 because for some reason when I apply <code>rolling(window=1).mean()</code> I get random results of the floating-point:
  <code>2021.000000000001</code>, <code>2021.0</code>, <code>7867.540000000001</code>, <code>7867.540000000002</code>, and when I take the unique values, all the values above are considered.</p>
  <p>This phenomenon happens in many more examples I have and I could not understand why and when it is suddenly randomly happening. (and I cannot remove the <code>rolling(window=1).mean()</code> from my code)</p>
  <p>did anyone encounter this behavior? any suggestions?</p>