String SAS Proc导入(CSV)中的数据总是被截断
我想读入一堆CSV文件。例如,这个(movies\u user.cleaned.csv)包含两个变量:uid(用户id)和movie\u name。因为SAS只读取前20行来猜测字符串的长度,所以我的数据会被截断。(《哈利波特》经常改成《哈利波特》等等。) 我知道我可以在代码中使用guessingrows=32767(32767是可以使用的最大值)让SAS检查前32767行,但我认为这不够安全,无法确保没有截断。我的一些CSV比这个大得多 以下是我使用的代码:String SAS Proc导入(CSV)中的数据总是被截断,string,csv,sas,truncation,String,Csv,Sas,Truncation,我想读入一堆CSV文件。例如,这个(movies\u user.cleaned.csv)包含两个变量:uid(用户id)和movie\u name。因为SAS只读取前20行来猜测字符串的长度,所以我的数据会被截断。(《哈利波特》经常改成《哈利波特》等等。) 我知道我可以在代码中使用guessingrows=32767(32767是可以使用的最大值)让SAS检查前32767行,但我认为这不够安全,无法确保没有截断。我的一些CSV比这个大得多 以下是我使用的代码: proc import dataf
proc import datafile="H:\FBDATA_CLEANED\facebookdata2\movies_user.cleaned.csv"
out=thesis.activities2
dbms=csv
replace;
getnames=yes;
run;
你们能帮我一点忙吗?谢谢 手动运行
PROC IMPORT
。在日志中,您将看到它生成的数据步骤
代码
复制那个密码
将PROC IMPORT
替换为数据步骤
编辑INFORMAT
和FORMAT
语句的大小,使字段足够大
使用
数据步骤
继续编码。您也可以在导入后打开一个新的编辑器窗口,然后按F4键,这将调用上次提交的代码。保存从日志中复制并删除行号gree,除非他使用的是企业指南,否则您不能。除非我错过了这个功能(除非我必须使用EG),我不知道,但我已经8年没有使用EG了!在日志中选择代码时按住Shift键以避免行号。使用此方法,您是否必须事先知道变量需要多少字节?