R更改字符向量的字符编码

我从两个不同的excel电子表格使用openxlsx :: read.xlsx读取两个数据框。 我想获得常用的列名称。 同

intersect(colnames(nutrients), colnames(req.EAR)) 

输出是

 [1] "carbohydrate_g" "calcium_mg" "iron_mg" "magnesium_mg" "phosphorus_mg" "zinc_mg" "vit_c_mg" [8] "thiamin_mg" "riboflavin_mg" "niacin_mg" "vit_b6_mg" "folate_µg" "vit_b12_µg" "vit_a_rae_µg" [15] "vit_e_mg" 

一个常见的元素 – vit_d_μg – 不会出现在交集中。 我怀疑这是因为在这两个电子表格中,包含μ的元素都被编码为UTF-8,其余的都是“未知”。

我想所有这一切的原因是列名中的μ(μ)。 我原本以为这是由于这样一个事实,即其中mu的元素名称被编码为UTF-8,而其他元素是“未知的”。

真正的原因是有两个UTF-8字符看起来像mu。 在这个网站([ http://www.fileformat.info/info/charset/UTF-8/list.htm]

 GREEK SMALL LETTER MU (U+03BC) looks like μ. MICRO SIGN (U+00B5) looks like µ. 

有人(可能是我)在将mu添加到电子表格中时犯了一个错误。