Azure 机器学习批处理请求返回带有 Unix 的格式错误的变音符号
Azure Machine Learning Batch request returning mal-formatted umlauts with Unixes
我已经在 Azure 机器学习中部署了我的代码,并且 运行 在 R 中使用不同的操作系统(例如 Unix 和 W10)部署了批处理请求。出于某种原因,主机输出仅在 W10 的 R 中正确格式化,但我无法在 Unix 系统中获得正确格式化的输出。我可以在所有系统中获得正确格式的输出的唯一方法是通过 Azure GUI 并手动下载文件。在 W10 中,我可以直接使用 Rscript/Rstudio 东西获得格式正确的文件。在 R 中,我使用 system("defaults write org.R-project.R force.LANG en_US.UTF-8")
作为提示 here 来显式指定编码,但这对 Microsoft 在 Azure 服务器 运行 中执行的批处理请求 R 脚本没有任何影响。
发生的事情是UTF-8 characters bytes are returned as Latin-1 characters bytes
,例如
ö
as à ¶
ä
as à ¤
Ä
as à ¥
可以使用此工具对 Latin-1 字符进行演示和测试 here。那么处理这个编码问题的最佳方法是什么,它可以在 Azure ML 中以某种方式解决吗?在哪里可以进行错误报告?在 R 中是否存在将 Latin-1 转换为 UTF-8 的工具?
如何在 Azure ML 中使用带有 R 批处理请求的元音符号(不是 Latin-1 字符)获取格式正确的 UTF-8 文件?
批处理请求 R 命令具有 saveBlobToFile
功能。问题出在 saveBlobToFile
函数中,它对 getUrl
使用了错误的编码。 getUrl
函数需要明确指定编码。进行以下更改
blobContent = getURL(blobUrl, .encoding="UTF-8")
如果没有 .encoding
,输出是 ISO8859-1('latin1')
或从您的系统继承的东西。
我已经在 Azure 机器学习中部署了我的代码,并且 运行 在 R 中使用不同的操作系统(例如 Unix 和 W10)部署了批处理请求。出于某种原因,主机输出仅在 W10 的 R 中正确格式化,但我无法在 Unix 系统中获得正确格式化的输出。我可以在所有系统中获得正确格式的输出的唯一方法是通过 Azure GUI 并手动下载文件。在 W10 中,我可以直接使用 Rscript/Rstudio 东西获得格式正确的文件。在 R 中,我使用 system("defaults write org.R-project.R force.LANG en_US.UTF-8")
作为提示 here 来显式指定编码,但这对 Microsoft 在 Azure 服务器 运行 中执行的批处理请求 R 脚本没有任何影响。
发生的事情是UTF-8 characters bytes are returned as Latin-1 characters bytes
,例如
ö
asà ¶
ä
asà ¤
Ä
asà ¥
可以使用此工具对 Latin-1 字符进行演示和测试 here。那么处理这个编码问题的最佳方法是什么,它可以在 Azure ML 中以某种方式解决吗?在哪里可以进行错误报告?在 R 中是否存在将 Latin-1 转换为 UTF-8 的工具?
如何在 Azure ML 中使用带有 R 批处理请求的元音符号(不是 Latin-1 字符)获取格式正确的 UTF-8 文件?
批处理请求 R 命令具有 saveBlobToFile
功能。问题出在 saveBlobToFile
函数中,它对 getUrl
使用了错误的编码。 getUrl
函数需要明确指定编码。进行以下更改
blobContent = getURL(blobUrl, .encoding="UTF-8")
如果没有 .encoding
,输出是 ISO8859-1('latin1')
或从您的系统继承的东西。