<p>您可以按照下面的方法对所有行使用<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html" rel="nofollow noreferrer">apply function</a>。你知道吗</p>
<p>首先定义一个函数,查看行中是否至少有一个值与零不同:</p>
<pre><code>def checkRow(row):
for x in row:
# Equivalent to if x != 0 or if x == True
if x:
return 1
# If all columns for this row is equal to 0 return 0
return 0
</code></pre>
<p>然后可以对前两列之后的所有列使用apply函数,并将结果放入<code>TRADING_DAY</code>列,如下所示:</p>
<pre><code>totSignals.TRADING_DAY = totSignals.iloc[:, 2:].apply(lambda row: checkRow(row), axis=1)
</code></pre>
<blockquote>
<p>To understand better the code, here is the offical documentation of all the function used:</p>
<p><a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html" rel="nofollow noreferrer">DataFrame.iloc</a>: to select the columns that you are interested in.</p>
<p><a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html" rel="nofollow noreferrer">DataFrame.apply</a>: to apply the function on every row of the DataFrame object.</p>
</blockquote>