unicode - 在 SAS 中导入 SPSS 文件 - 语言差异

标签 unicode import sas

我在将 SPSS 文件导入 SAS 时遇到问题。我使用的代码是:

proc import datafile = "C:\SAS\Germany.sav"
     out=test
     dbms = sav
     replace;
 run;

所有数据均已导入,但问题是某些变量的值名称略有不同。因此,例如在 SPSS 文件中,变量“A”的值是“KÖL”,但是当导入到 SAS 中时,它会变成“K×L”。

我的想法是,问题可能是由于 .sav 文件包含一些 SAS 无法理解的德语单词。

是否有一个命令可以加载 SAS 中的库或其他内容,以便它可以理解特定于语言的值?

附注我还在这里找到了类似的帖子:Importing Polish character file in SAS 但答案并不明确。

最佳答案

默认情况下,SAS 通常使用标准 windows-latin-1 代码页安装,通常称为“ASCII”(不正确)。 SAS 本身可以处理任何编码,但如果它默认使用 Windows-Latin-1,则它不会处理某些 Unicode 转换。

如果您使用 SAS 9.3 或 9.4,并且可能使用 v9 的早期版本,则您可能安装了 SAS 的 Unicode 版本。查看

\SasFoundation\9.x\nls\

在那里您可能会找到“en”(无论如何,如果您使用英语),它通常使用默认的 Windows-latin-1 代码页。您还将找到(可能,如果已安装的话)Unicode 兼容版本。这实际上只是一个配置设置,但对于正确配置它们来说足够重要,因为它们提供了预烘焙的配置文件。

就我而言,nls 下有一个“u8”文件夹,然后我可以在数据集上以及读取数据时使用该文件夹启用 Unicode 字符编码。

需要注意的是:我不确定 SPSS 导入引擎处理 Unicdoe/MBCS 字符的效果如何。这是一个单独的问题;如果您运行 SAS 的 unicode 版本并且仍然存在问题,则可能是问题所在,您可能需要以不同方式导出 SPSS 文件或联系 SAS 技术支持。

关于unicode - 在 SAS 中导入 SPSS 文件 - 语言差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29103319/

相关文章:

json - com.google.appengine.repackaged 可能会导致您的应用在没有警告的情况下崩溃

database - Oracle -- 将数据导入到具有不同名称的表中?

sql - Netezza SQL - 给出参数

sas - SAS是否具有内联的if函数或三元运算符?

ruby - 如何在 ruby​​ 1.8 中用 ascii 替换 unicode 引号?

windows - OEMToCharW 返回错误字符

sql - 使用 import 命令在 db2 表中的非空列中添加空格

Python - 将德语变音符号音译为变音符号

php - 为什么 PHP 的 urlencode 使用不同的 URL 编码?

sas - 如何使用SAS检查可用磁盘空间