我正在使用Stata 12。我遇到了以下问题。我正在使用以下命令将一堆 .csv 文件导入到 Statainsheet
命令。数据集可能包括俄语、克罗地亚语、土耳其语等。我认为它们是用“UTF-8”编码的。在 .csv 文件中,它们是正确的。我把它们导入Stata后,原来的字符串不正确,变成了奇怪的字符。你能帮我一下吗? Stat-Transfer 能解决这些问题吗?它支持.csv 格式吗?
For example,
the original file is like:
我的代码是这样的:
内表使用 name.csv, c n
保存名称.dta,替换
The result is like:
而且我尝试在字体选项中调整脚本,但不起作用。
正如 @Nick Cox 之前评论的那样,问题在于 Stata 不支持 Unicode/UTF-8 编码。
不,StatTransfer 无法解决问题(请参阅这个解释 http://www.stattransfer.com/faq/encoding.html).
您可以使用在线解码器或 MS Word 来实现此目的。让我们首先使用一种语言来完成此操作,例如屏幕截图中的俄语。检查克罗地亚语、土耳其语和您拥有的其他语言的正确编码。
- 将 .csv 文件中的字符串变量另存为纯文本 (.txt),选择 UTF-8 编码选项。
- Encoding conversion:
- 使用 @Dimitriy V. Masterov 建议的 iconv,或者
- 使用在线工具,例如this http://www.gofunnow.com/convertutf8/convertutf8.php#.UmzdNRC4OQc:上传.txt文件,选择源编码为UTF-8,根据感兴趣的语言选择输出编码(对于俄语,必须是CP1251),单击“转换”按钮并保存输出文件,或者
- 如果您有 MS Office,则也可以使用 MS Word 来达到相同的目的。右键单击.txt 文件,选择“打开方式...”,选择使用 MS Word 打开。在出现的窗口中,确认文件编码为“Unicode (UTF-8)”,打开,然后单击“另存为...”,另存为纯文本。在新出现的窗口中,选择“西里尔字母(Windows)”并标记“插入换行符”。节省。
- 检查你的新 .txt 文件 - 它仍然应该有一些奇怪的字符(如 ÌßÑÎÊÎÌÁÈÍÀÒ),但现在 Stata 可以正确显示它们。
- Copy-paste the new string variable in Stata Data Editor, right click on the variable, choose "Font...", and then string "Cyrillic". You should see correct names on the screen both in data editor and in the results window (even though the string itself is intact).
根据您的操作系统,您可能需要首先安装所有适当的语言。
希望能帮助到你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)