楼主: 逍遥梦蝶
2655 6

[问答] 使用Proc Import导入含有中文字符的XLSX文件出现警告如何解决? [推广有奖]

  • 3关注
  • 18粉丝

学科带头人

98%

还不是VIP/贵宾

-

威望
0
论坛币
17149 个
通用积分
980.0051
学术水平
111 点
热心指数
117 点
信用等级
87 点
经验
51072 点
帖子
702
精华
0
在线时间
4764 小时
注册时间
2009-5-22
最后登录
2024-4-19

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
采用如下代码导入一个含有多列长中文字符的Excel XLSX文件

proc import
        datafile='D:\A.xlsx'
        out=A
        dbms=xlsx replace;       
run;

运行后出现很多行如下内容的警告:
WARNING: 列“D0601b at obs 1131”的转码过程中,某些字符型数据丢失。
WARNING: 列“D0801c at obs 55894”的转码过程中,某些字符型数据丢失。
列D06010b、D0801c 都是含有中文字符的字符串变量。其中,D0801c 还是比较长的字符串。

使用的是中文SAS 9.4 M0正版。这个问题是和中文编码有关系吗?请问该如何写代码避免读入数据而造成的字符型数据丢失?谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:xlsx文件 import xlsx Port xls

沙发
nightmeal 发表于 2022-8-3 12:09:15 |只看作者 |坛友微信交流群
dbms=用的是xlsx?换excel试试,再不行就先转成csv,再再不行就直接换成access文件

使用道具

藤椅
逍遥梦蝶 发表于 2022-8-3 20:47:50 |只看作者 |坛友微信交流群
nightmeal 发表于 2022-8-3 12:09
dbms=用的是xlsx?换excel试试,再不行就先转成csv,再再不行就直接换成access文件
不知道为什么之前写的code被截断了。

是的,dbms=xlsx。

谢谢解答,我可以尝试一下。不过这个导入的设计的确有点不友好…

使用道具

板凳
shanfei1386 学生认证  发表于 2022-8-10 14:51:04 |只看作者 |坛友微信交流群
运行一下:option validvarname=any;试试看,允许读入中文

使用道具

报纸
逍遥梦蝶 发表于 2022-8-11 09:17:52 |只看作者 |坛友微信交流群
shanfei1386 发表于 2022-8-10 14:51
运行一下:option validvarname=any;试试看,允许读入中文
谢谢,我试试。

使用道具

地板
栗子面窝头 发表于 2022-9-14 09:24:19 |只看作者 |坛友微信交流群
换用unicode的版本开,应该就好了,应该是部分生僻字或者符号没有

使用道具

7
hgee 发表于 2022-11-4 13:57:30 |只看作者 |坛友微信交流群
文字问题吗

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 21:52