Buenas:
Prueba con
Tipo_de_moneda <- factor(na.omit(archivotxt$Moneda), levels = c("$", "U$S"), labels = c("peso", "dolar"), ordered = TRUE)En este caso el vector quedará con menos elementos que el vector inicial y, por tanto, el tipo de moneda de una fila no coincidirá con el especificado en dicha fila.
Un saludo.