arrs = ['adidmd5', 'imeimd5', 'macmd5', 'openudidmd5', 'ip']
val = []
for i in range(len(arrs)):
val.append(list(set(train[arrs[i]].unique()) & set(test[arrs[i]].unique())))
cols_md5 = []
for i in range(len(arrs)):
temp = pd.DataFrame(list(val[i]), columns=[arrs[i]])
temp[arrs[i]+'_new'] = temp[arrs[i]]
cols_md5.append(arrs[i]+'_new')
print(cols_md5[i]+' done!')
data = data.merge(temp, on = arrs[i], how = 'left')
for feat in cols_md5:
temp = data.groupby([feat])['label'].count().reset_index().rename(columns={'label': "%s_count" % feat})
data = data.merge(temp,on=[feat],how='left')
print(feat+'_count done!')