US Secretary of State Marco Rubio said he would skip G20 talks in South Africa, accusing the host government of an "anti-American" agenda.