<p>我正在做一个技术分析项目,我需要为买入/卖出信号的<code>matplotlib</code>图表添加注释。当我从<code>yfinance</code>模块获取数据时,我的<code>DataFrame</code>中自动有一个<code>DateTimeIndex</code>。
我的<code>DataFrame</code>看起来像这样:</p>
<pre><code>Date Close Upper SMA Lower Buy Sell
2020-05-21 231.389999 219.042175 207.178002 195.313829 NaN 231.389999
2020-05-22 234.910004 222.051354 209.420002 196.788650 NaN 234.910004
2020-05-26 232.199997 224.164115 211.655002 199.145889 NaN NaN
2020-05-27 229.139999 225.151643 213.966502 202.781360 NaN NaN
2020-05-28 225.460007 226.004370 215.530002 205.055633 NaN NaN
2020-05-29 225.089996 226.911921 216.549001 206.186082 NaN NaN
2020-06-01 231.910004 228.365279 218.031001 207.696723 NaN NaN
</code></pre>
<p>当Sell/Buy列中有一个not<code>NaN</code>值时,我想得到它的<code>Date</code></p>
<p>因此,如果售价是<code>231.389999</code>,我想要的日期是<code>2020-05-21</code></p>
<blockquote>
<p>So far I have tried:</p>
<pre class="lang-py prettyprint-override"><code>for i in range(0, len(df['Sell'])):
if pd.notnull(df['Buy'][i]):
date = df[df['Buy'] == i].index
</code></pre>
<p>But I get an empty list: <code>DatetimeIndex([], dtype='datetime64[ns]', name='Date', freq=None)</code></p>
</blockquote>
<p>一旦我得到了<code>Date</code>值,我就可以输入is作为<code>x-axis</code>值,<code>y-axis</code>值将是注释图表的not<code>NaN</code>值</p>
<p>获得<code>DateTimeIndex</code>的正确方法是什么</p>