Pandas pd.merge results in NaN rather than the actual value
<p>I'm getting two different merge behaviors using pd.merge that I can't explain and I'm hoping someone can lend a hand.</p>

<p><strong>Example One</strong></p>

<p>Creating the dataframes manually results in the right merge behavior. Namely, that the Seller column has the correct value.</p>

<pre><code>df1 = DataFrame([[1,'Dude','2016-03-07 16:21', '1e2345a6-ae7e-89e0-123d-b4567fcc8fb9']],columns=['ID','Name','Created at', 'Unit'])

df2 = DataFrame([['SellTEST','1e2345a6-ae7e-89e0-123d-b4567fcc8fb9']], columns=['Seller', 'Unit'])

merge_df = pd.merge(df1, df2, on=['Unit'],how='left')

print (merge_df)
</code></pre>

<p>Results:</p>

<pre><code>   ID  Name        Created at                                  Unit    Seller
0   1  Dude  2016-03-07 16:21  1e2345a6-ae7e-89e0-123d-b4567fcc8fb9  SellTEST
</code></pre>

<p>If I read in the same data from .csv files I receive incorrect results with the merge. The Seller column now contains NaN:</p>

<p><strong>Example Two</strong></p>

<pre><code>ticketdata = r'tickets3.csv'
userdata = r'users3.csv'

df1 = pd.read_csv(ticketdata)
df2 = pd.read_csv(userdata)

merge_df = pd.merge(df1, df2, on=['Unit'],how='left')
print (merge_df)
</code></pre>

<p>Results: </p>

<pre><code>   ID  Name        Created at                                  Unit    Seller
0   1  Dude  2016-03-07 16:21  1e2345a6-ae7e-89e0-123d-b4567fcc8fb9     NaN
</code></pre>

<p>I've confirmed that dtypes are the same with both data sets. Everything is an Object with the exception of ID which is int64.</p>

<p>What am I missing?</p>