<p dir="auto"><code class="notranslate">DataFrame.duplicated</code> correctly uses <code class="notranslate">hashtable.duplicated_int64</code> a specialized routine, while <code class="notranslate">core.series.IndexOpsMixin.duplicated</code> uses <code class="notranslate">lib.duplicated</code> an object based one.</p>
<p dir="auto">as its almost always better to factorize then use the fast routine, than to do object comparisons.<br>
but YMMV, so needs a couple of perf tests.</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="In [3]: s = Series(np.random.randint(0,10000,size=100000))

In [4]: %timeit s.duplicated()
100 loops, best of 3: 5.75 ms per loop

In [6]: df = s.to_frame()

In [8]: %timeit df.duplicated()
1000 loops, best of 3: 1.86 ms per loop"><pre class="notranslate"><code class="notranslate">In [3]: s = Series(np.random.randint(0,10000,size=100000))

In [4]: %timeit s.duplicated()
100 loops, best of 3: 5.75 ms per loop

In [6]: df = s.to_frame()

In [8]: %timeit df.duplicated()
1000 loops, best of 3: 1.86 ms per loop
</code></pre></div>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">scatter_matrix</code> (deprecate, redirect to <code class="notranslate">seaborn</code>)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">andrews_curve</code></li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">parallel_coordinates</code></li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">lag_plot</code> (maybe rename to <code class="notranslate">lag</code>)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">autocorrelation_plot</code> (maybe rename to <code class="notranslate">autocorrelation</code>?)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">bootstrap_plot</code> (maybe rename to <code class="notranslate">bootstrap</code>?)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> <code class="notranslate">radviz</code></li>
</ul>
<p dir="auto">I think it would be nice to allow <a href="http://pandas.pydata.org/pandas-docs/version/0.15.0/visualization.html#scatter-matrix-plot" rel="nofollow">scatter_matrix</a> to be called directly on a DataFrame. Currently, <code class="notranslate">scatter_matrix</code> is a separate function that takes a DataFrame as a parameter, but it seems like it would be easy enough to rework to allow it to be called directly on a DataFrame as well. Effectively, the convenience function would look something like:</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="def scatter_matrix(self, ...):
    pandas.tools.plotting.scatter_matrix(self.data, ...)"><pre class="notranslate"><span class="pl-k">def</span> <span class="pl-en">scatter_matrix</span>(<span class="pl-s1">self</span>, ...):
    <span class="pl-s1">pandas</span>.<span class="pl-s1">tools</span>.<span class="pl-s1">plotting</span>.<span class="pl-en">scatter_matrix</span>(<span class="pl-s1">self</span>.<span class="pl-s1">data</span>, ...)</pre></div>
<p dir="auto">Is this feature feasible?</p>