<p dir="auto">Seems like a bug, such a comparison should definitely be allowed. Pandas Version 0.20.2, Ubuntu.</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="In [2]: import pandas as pd

In [3]: df = pd.DataFrame({&quot;a&quot; : [1,2], &quot;b&quot; : [2,3]})

In [4]: import numpy as np

In [5]: np.all(df[&quot;a&quot;] == &quot;&quot;)
/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py:798: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
  result = getattr(x, name)(y)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
&lt;ipython-input-5-346e9f7bf435&gt; in &lt;module&gt;()
----&gt; 1 np.all(df[&quot;a&quot;] == &quot;&quot;)

/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py in wrapper(self, other, axis)
    859 
    860             with np.errstate(all='ignore'):
--&gt; 861                 res = na_op(values, other)
    862             if is_scalar(res):
    863                 raise TypeError('Could not compare %s type with Series' %

/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py in na_op(x, y)
    798                     result = getattr(x, name)(y)
    799                 if result is NotImplemented:
--&gt; 800                     raise TypeError(&quot;invalid type comparison&quot;)
    801             except AttributeError:
    802                 result = op(x, y)

TypeError: invalid type comparison"><pre class="notranslate"><code class="notranslate">In [2]: import pandas as pd

In [3]: df = pd.DataFrame({"a" : [1,2], "b" : [2,3]})

In [4]: import numpy as np

In [5]: np.all(df["a"] == "")
/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py:798: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
  result = getattr(x, name)(y)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
&lt;ipython-input-5-346e9f7bf435&gt; in &lt;module&gt;()
----&gt; 1 np.all(df["a"] == "")

/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py in wrapper(self, other, axis)
    859 
    860             with np.errstate(all='ignore'):
--&gt; 861                 res = na_op(values, other)
    862             if is_scalar(res):
    863                 raise TypeError('Could not compare %s type with Series' %

/home/alexander/anaconda3/lib/python3.5/site-packages/pandas/core/ops.py in na_op(x, y)
    798                     result = getattr(x, name)(y)
    799                 if result is NotImplemented:
--&gt; 800                     raise TypeError("invalid type comparison")
    801             except AttributeError:
    802                 result = op(x, y)

TypeError: invalid type comparison
</code></pre></div>
<p dir="auto">Test case:</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="def test_datetimeindex__eq__():
    &quot;&quot;&quot;Equality comparisons should never raise an exception&quot;&quot;&quot;
    pd.DatetimeIndex(['01-Jan-2015']) == ()"><pre class="notranslate"><span class="pl-k">def</span> <span class="pl-en">test_datetimeindex__eq__</span>():
    <span class="pl-s">"""Equality comparisons should never raise an exception"""</span>
    <span class="pl-s1">pd</span>.<span class="pl-v">DatetimeIndex</span>([<span class="pl-s">'01-Jan-2015'</span>]) <span class="pl-c1">==</span> ()</pre></div>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="In [115]: test_datetimeindex__eq__()
Traceback (most recent call last):

  File &quot;&lt;ipython-input-115-9b7967ca9de2&gt;&quot;, line 1, in &lt;module&gt;
    test_datetimeindex__eq__()

  File &quot;&lt;ipython-input-114-7ae5783187b8&gt;&quot;, line 3, in test_datetimeindex__eq__
    pd.DatetimeIndex(['01-Jan-2015']) == ()

  File &quot;C:\dev\bin\Anaconda\lib\site-packages\pandas\tseries\index.py&quot;, line 90, in wrapper
    other = _ensure_datetime64(other)

  File &quot;C:\dev\bin\Anaconda\lib\site-packages\pandas\tseries\index.py&quot;, line 112, in _ensure_datetime64
    raise TypeError('%s type object %s' % (type(other), str(other)))

TypeError: &lt;type 'tuple'&gt; type object ()"><pre class="notranslate"><span class="pl-v">In</span> [<span class="pl-c1">115</span>]: <span class="pl-en">test_datetimeindex__eq__</span>()
<span class="pl-v">Traceback</span> (<span class="pl-s1">most</span> <span class="pl-s1">recent</span> <span class="pl-s1">call</span> <span class="pl-s1">last</span>):

  <span class="pl-v">File</span> <span class="pl-s">"&lt;ipython-input-115-9b7967ca9de2&gt;"</span>, <span class="pl-s1">line</span> <span class="pl-c1">1</span>, <span class="pl-s1">in</span> <span class="pl-c1">&lt;</span><span class="pl-s1">module</span><span class="pl-c1">&gt;</span>
    <span class="pl-en">test_datetimeindex__eq__</span>()

  <span class="pl-v">File</span> <span class="pl-s">"&lt;ipython-input-114-7ae5783187b8&gt;"</span>, <span class="pl-s1">line</span> <span class="pl-c1">3</span>, <span class="pl-s1">in</span> <span class="pl-s1">test_datetimeindex__eq__</span>
    <span class="pl-s1">pd</span>.<span class="pl-v">DatetimeIndex</span>([<span class="pl-s">'01-Jan-2015'</span>]) <span class="pl-c1">==</span> ()

  <span class="pl-v">File</span> <span class="pl-s">"C:\dev<span class="pl-cce">\b</span>in\Anaconda\lib\site-packages\pandas<span class="pl-cce">\t</span>series\index.py"</span>, <span class="pl-s1">line</span> <span class="pl-c1">90</span>, <span class="pl-s1">in</span> <span class="pl-s1">wrapper</span>
    <span class="pl-s1">other</span> <span class="pl-c1">=</span> <span class="pl-en">_ensure_datetime64</span>(<span class="pl-s1">other</span>)

  <span class="pl-v">File</span> <span class="pl-s">"C:\dev<span class="pl-cce">\b</span>in\Anaconda\lib\site-packages\pandas<span class="pl-cce">\t</span>series\index.py"</span>, <span class="pl-s1">line</span> <span class="pl-c1">112</span>, <span class="pl-s1">in</span> <span class="pl-s1">_ensure_datetime64</span>
    <span class="pl-k">raise</span> <span class="pl-v">TypeError</span>(<span class="pl-s">'%s type object %s'</span> <span class="pl-c1">%</span> (<span class="pl-en">type</span>(<span class="pl-s1">other</span>), <span class="pl-en">str</span>(<span class="pl-s1">other</span>)))

<span class="pl-v">TypeError</span>: <span class="pl-c1">&lt;</span><span class="pl-s1">type</span> <span class="pl-s">'tuple'</span><span class="pl-c1">&gt;</span> <span class="pl-s1">type</span> <span class="pl-en">object</span> ()</pre></div>