Pandas 'drop_duplicated' is incorrectly removing unique rows
#### Code Sample, a copy-pastable example if possible
```python
import glob
import pandas as pd

files = glob.glob('*.tab')

dfs = [pd.read_csv(fp, sep='\t',index_col=[0], header=0) for fp in files]

df = pd.merge(dfs[0], dfs[1],how='outer', left_index=True, right_index=True).sort_index()

df1 = pd.merge(dfs[2], df, how='outer', left_index=True, right_index=True).sort_index()

df2 = df1.fillna('-')

df3 = df2.drop_duplicates(keep='first') #Not working properly

print (df3)

df3.to_csv('/home/jsena/Documents/atten_sites_1.csv', sep='\t')
```
#### Problem description
I used the code above to combine and merage several tab separated files. I then attempted to remove duplicate rows with drop_duplicates. When I use drop_duplicates, unique rows are being removed. However, If I use command-line tools I can get the correct output. 

Thank you very much for your help!

**Input Files:**
[5270.txt](https://github.com/pandas-dev/pandas/files/1741608/5270.txt)
[2579.txt](https://github.com/pandas-dev/pandas/files/1741609/2579.txt)
[57.txt](https://github.com/pandas-dev/pandas/files/1741610/57.txt)
**note:**  I had to change the extension from .tab to .txt to attach the files.

**Note**: Many problems can be resolved by simply upgrading `pandas` to the latest version. Before submitting, please check if that solution works for you. If possible, you may want to check if `master` addresses this issue, but that is not necessary.

_Upgrading Pandas did not solve my issue. I get the same results with conda and pandas_
**Pandas version used with conda**
pd.__version__
'0.22.0'

**Expected Output**
[expected_output.txt](https://github.com/pandas-dev/pandas/files/1749880/expected_output.txt)

read	 56	 2578	5269
100005/ccs#CACTAGTCTGTTATTC	              T	A	T
100009/ccs#CCACAATGGCGGCACT	              T	A	T
100013/ccs#CACCTCCACCGTTAAT	              T	A	T
00017/ccs#CCTTCACAGTATAACA	                      T	-	T
100021/ccs#ACCTTGAATCGTCGAC	              T	A	T
100023/ccs#CCGACTGTCATATGGT	              T	A	T
100027/ccs#CCGCATTCCGAAATTA	              T	A	T
10004/ccs#CTCTTGCACAAAATCG	              T	A	T


**drop_duplicates output**
[pandas_output.txt](https://github.com/pandas-dev/pandas/files/1741647/pandas_output.txt)

read	56	2578	5269
100005/ccs#CACTAGTCTGTTATTC	T	A	T
100017/ccs#CCTTCACAGTATAACA	T	-	T
100075/ccs#CTCTGTAAGTGTCCTT	-	A	T
10008/ccs#CCAGCTTCGGACCAGC	T	A	-
10052/ccs#CCCATCCGGTCGAAAC	-	-	T
100575/ccs#CGGTACTTGTGTTTTC	-	A	-
100734/ccs#CCGCACTCCTGCTCAC	T	-	-
101808/ccs#CATGCGATCGAAACCG	C	A	T

#### Output of ``pd.show_versions()``

Python and Pandas version
Python 3.6.3 |Anaconda, Inc.| (default, Oct 13 2017, 12:02:49) 
[GCC 7.2.0] on linux
pandas.__version__
'0.20.3'
</details>
