R 输入特殊字符及;NA';将csv转换为SAS不起作用

R 输入特殊字符及;NA';将csv转换为SAS不起作用,r,import,character-encoding,sas,export,R,Import,Character Encoding,Sas,Export,我有一个csv文件,其中包含许多“NA”值和特殊字符,如ä、ö或ß。我想通过proc import将此csv文件导入到SAS,但不幸的是,我有两个问题: 1) NA被读取为字符,而不是缺少的值 2) 特殊字符会自动更改为@+-~ 当我将csv导入到R中时,我能够解决编码“UTF-8”的两个问题-NA被识别为缺失,特殊字符被正确显示。我的想法是将文件从R导出为dbf文件,并将此dbf文件导入SAS。此过程解决了NA的问题,但特殊字符再次以错误的方式显示。我还在SAS中尝试了不同的编码,但也不起作用

我有一个csv文件,其中包含许多“NA”值和特殊字符,如ä、ö或ß。我想通过
proc import
将此csv文件导入到
SAS
,但不幸的是,我有两个问题:

1) NA被读取为字符,而不是缺少的值

2) 特殊字符会自动更改为@+-~


当我将csv导入到
R
中时,我能够解决编码“UTF-8”的两个问题-NA被识别为缺失,特殊字符被正确显示。我的想法是将文件从
R
导出为dbf文件,并将此dbf文件导入
SAS
。此过程解决了NA的问题,但特殊字符再次以错误的方式显示。我还在SAS中尝试了不同的编码,但也不起作用。非常感谢您的帮助

我将使用数据步骤而不是过程导入。它可能看起来像:

Data MyCSV;
  Infile "C:\MyName\ImportData.CSV"
         Delimiter="," LRecL=1000 DSD Missover Firstobs=2; * Firstobs=2 to delete col-names;
  Informat qty_txt $9. ; * 9 .. length in characters;
  If qty_txt ^= "NA" Then qty=Input(qty_txt,Best15.); Drop qty_txt;
Run;
(如果您是从write.csv中的R set na=“.”导出。)


关于特殊字符问题,请将变量定义为informat语句中的字符。您使用的SAS版本是什么?您的SAS会话使用什么编码?感谢您的回复Tom,基于r.user.05apr的回答,我已经能够解决我的问题了。