擅长:python、mysql、java
<pre><code>import pandas as pd
data = {
'VOL1':[0, 21, 19, 18],
'VOL2':[1, 21, 0, 0],
}
# Create DataFrame
df = pd.DataFrame(data)
df['D'] = [None] * len(df)
first_nonzero_df = df[df!=0].cumsum(axis=1).min(axis=1)
keys = df.keys()
for i in range(len(df)):
for j in range(len(keys)):
if df[f'{keys[j]}'][i] == 0:
df[f'{keys[j]}'][i] = first_nonzero_df[i]
df = df.fillna(0)
df
</code></pre>
<p>输出:</p>
<p><a href="https://i.stack.imgur.com/LV3iQ.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/LV3iQ.png" alt="enter image description here"/></a></p>