Change field input type on node edit form
Try this in a custom module...

/**
 * Implements hook_form_FORM_ID_alter().
 */
function MODULE_NAME_form_YOUR_FORM_ID_alter(&amp;$form, &amp;$form_state) {    

  // Replace the next 5 lines with your logic to set the array of values
  $options = array(
    1 =&gt; 'Red',
    2 =&gt; 'Blue',
    3 =&gt; 'Green',
  );    

  $form['FORM_ELEMENT_ID']['#type'] = 'select';
  $form['FORM_ELEMENT_ID']['#options'] = $options;
}


Replace MODULE_NAME, YOUR_FORM_ID and FORM_ELEMENT_ID with your module name, form id and form element key respectively.