我使用openxlsx :: read.xlsx从两个不同的excel电子表格中读取了两个数据框。我想获得常见的列名。与
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(μ)。我原本以为这是因为其中带有mu的元素名称被编码为UTF-8而其他元素名称为“未知”。
真正的原因是有两个看起来像mu的UTF-8字符。在这个网站上[{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添加到电子表格时犯了一个错误。