【发布时间】:2012-01-26 10:04:11
【问题描述】:
我有一个包含公司数据和说明的 Excel 电子表格。一些单元格中基本上包含小论文,单个单元格中包含的页面和纯文本页面。当我导入文件时,SAS 一直给我带来问题,因为它会截断一些较长的单元格,并且文本会在句子中间被截断。关于如何避免这种情况的任何想法?我尝试将文件保存到制表符分隔的文本文件,但没有运气。
谢谢!
【问题讨论】:
标签: excel import sas truncation csv
我有一个包含公司数据和说明的 Excel 电子表格。一些单元格中基本上包含小论文,单个单元格中包含的页面和纯文本页面。当我导入文件时,SAS 一直给我带来问题,因为它会截断一些较长的单元格,并且文本会在句子中间被截断。关于如何避免这种情况的任何想法?我尝试将文件保存到制表符分隔的文本文件,但没有运气。
谢谢!
【问题讨论】:
标签: excel import sas truncation csv
正如您所说,导出到制表符分隔或 csv 可能是可行的方法。确保也将字符串括在引号中。但是你有为包含长单元格的变量指定的长度吗?根据 SAS,最大长度为 32,767 个字符,因此可以尝试尽可能大的数字——希望小于这个数字。
此外,lrecl(文件每行的最大长度)应指定为最大值 32767。
data test;
length company_name $20 description1 description2 $10000;
infile my_tab_dlm_file lrecl = 50000 dsd delimiter = '09'x;
input company_name
description1
description2
;
run;
【讨论】:
如果您有 SAS/ACCESS (which this link explains how to check) 的许可证。您可以使用 libname 访问 Excel 电子表格 (this link talks about Excel access) 和 this is a great paper which details how to get at the Excel data just like a SAS data set。
(但@Neil Neyman 的回答听起来也不错)
【讨论】: