Remove addresses with only a country
I was on the right track and made a really stupid mistake and don't know why I didn't notice it. I was deleting the correct way but I was deleting the wrong thing. I was in a loop since there are multiple addresses. 

// Empty the address and location arrays if the fields were blank
if (!$found) {
    unset($node-&gt;field_micro_address[LANGUAGE_NONE][$k]);
}