fixed bug in DataFrame.diff - issue #10907
Fixed issue #10907 

This is my first PR here. Could someone help me pass this Travis test? After I made the changes in the code, what should I do?
 try running the tests locally first 

eg

nosetests pandas/test_frame.py
 the consolidate has to go in core/internals.py (where diff is defined)
 When I run tests by calling `nosetests pandas/tests/test_frame.py`, the following error occurred: `ImportError: No module named test_frame`. 

Is there anything else I should do before test it? 
 see the docs here: http://pandas.pydata.org/pandas-docs/stable/contributing.html
 Thanks so much for your help! I have made the changes. Now I understand the code structure better. Hopefully I'll be able to contribute more in the future. 
 Done. Should be able to merge now since it passes tests locally. There are too many Travis build tasks pending now.
 needs a whatsnew note
pls squash 
 This should do it now, right?
 pls squash as well.
 Thanks. Done. 
 ok, pls squash to a single commit. ping when green.
 It has conflicts that I don't know how to solve if I squash...could we leave it as it is this time? Both commits are descriptive to me. 
 ping me when green. typically we use just a single commit on things like this. this is just the way pandas has always worked.
 @jreback could you merge?
 will get to soon
 This is the same as the original. Now in the testing code, I've created the same DataFrame that's originally created via DataFrame.insert. The core problem rises from DataFrame.diff instead of DataFrame.insert. Please take a quick comparison between the outdated diff in this PR and the new push in this PR. Thanks.
 If you do a assertDataFrameEqual to the original test code and the current test code. You'll see those DataFrames are equivalent. 
 your test passes on 0.16.2
so you have not replicated it exactly

you haven't proven that you fixed the bug (you did) but your test doesn't work 
 Ok didn't know that. I'll revise the test soon. Thanks for double checking.
On Aug 31, 2015 3:44 PM, "Jeff Reback" notifications@github.com wrote:

> your test passes on 0.16.2
> so you have not replicated it exactly
> 
> you haven't proven that you fixed the bug (you did) but your test doesn't
> work
> 
> —
> Reply to this email directly or view it on GitHub
> https://github.com/pydata/pandas/pull/10930#issuecomment-136479652.
 @jreback Could you double check new push?
 merged via https://github.com/pydata/pandas/commit/219ad757a36f96110810282257e3cf2633f1f5bb

thanks!

generally you want to create a branch each time you make a change (and not do it on master)

see [here](http://pandas.pydata.org/pandas-docs/stable/contributing.html)
 @jreback I don't think this fix works if you have mixed types, since consolidate can't consolidate those blocks.  This is much less common, but I could see someone with mixed ints and floats that wants to shift
 @hhuuggoo yes, this is prob just wrong. it needs to create the indexer then do a take.

Can you create another issue with an example?

thxs
 yup! 
