擅长:python、mysql、java
<p>这个错误的根本原因是每次都用一个新的np.哪里(),而不是级联where()表达式。但比级联where()表达式是<a href="https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.select.html" rel="nofollow noreferrer">^{<cd1>}</a>更好:</p>
<pre><code>c0 = df.days < df.days_1
c1 = (df.days_1 < df.days) & (df.days < df.days_2)
c2 = ((df.days_2 < df.days) & (df.days < df.period)) | (df.days > df.period)
df['days_missed'] = np.select([c0, c1, c2], [0, df.days - df.days_1, df.days - df.days_2])
</code></pre>