Podemos modificar los datos de un usuario por codigo usando las funciones de la API de Drupal, user_load y user_save.
$edit = array();
$user = user_load($uid);
$edit['field_nombre_del_campo']['und'][0]['value'] = "nuevo valor que yo quiera";
user_save($user, $edit);
De esta forma realizamos todos los cambios que necesitemos en una estructura aparte ($edit), sin tocar el objeto $user original, lo que nos permitirá realizar cuantas comprobaciones y validaciones necesitemos sobre el valor original de los campos, y realizar todos los cambios al final de una vez.
En la documentación original de la función esta explicado, y teneis unos cuantos comentarios útiles sobre su uso, eso si, en inglés.
https://api.drupal.org/api/function/user_save/7