import pandas as pd;pd.merge(pd.read_csv('../input/test.csv', usecols=[0,2,3,4]), pd.read_csv('../input/train.csv', dtype={'app':'uint16', 'device':'uint16', 'os':'uint16', 'is_attributed':'uint8'}, usecols=[1,2,3,7]).groupby(['app', 'device', 'os'])['is_attributed'].mean().reset_index(), on=['app', 'device', 'os'], how='left').fillna(1e-4)[['click_id', 'is_attributed']].to_csv('mean_ado.csv', index=False)