User does not need to put all column names in data_cols