Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Concatenate two numerical values to make a new column using pandas?

I have two columns in my dataframe.

var1    var2
01       001

I would like to create a third column that joins them together:

var1    var2    var3
01       001    01001

Does anyone know how to do this? Thank you!

like image 901
jam Avatar asked Apr 21 '16 15:04

jam


1 Answers

You can use simple concatenate by + with casting by astype:

df['var3'] = df.var1.astype(str) + df.var2.astype(str)
print df
  var1 var2   var3
0   01  001  01001

If type of both columns is string casting is omited:

print type(df.loc[0,'var1'])
<type 'str'>
print type(df.loc[0,'var2'])
<type 'str'>

df['var3'] = df.var1 + df.var2
print df
  var1 var2   var3
0   01  001  01001
like image 186
jezrael Avatar answered Oct 14 '22 11:10

jezrael