楼主: kamikamy
11973 8

[学习分享] sas proc import过程导入excel文件,从第n行开始读取数据并将第n行作为变量名 [推广有奖]

  • 0关注
  • 0粉丝

大专生

31%

还不是VIP/贵宾

-

威望
0
论坛币
14 个
通用积分
16.0293
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
767 点
帖子
18
精华
0
在线时间
59 小时
注册时间
2014-3-13
最后登录
2020-7-15

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我在导入excel时,想从xlsx的中间段开始读取数据,并将开始读取数据的这一行作为变量名,百度未果,于是看F11自己研究了一下,搞明白了,分享给大家

比如,我的文件excel文件第九行是想读取的变量名,第10行开始是data;
所要读取数据左上角单元格为A9,右下角单元格为HA2055:

PROC IMPORT OUT= file_name
            DATAFILE= "file_address.xlsx"
            DBMS=EXCEL REPLACE;
     RANGE='sheet_name$A9:HA2055'n;
     GETNAMES=YES;
     MIXED=YES;
     SCANTEXT=YES;
     USEDATE=YES;
     SCANTIME=YES;
RUN;


GETNAMES的选项必须要定义为YES,才会把第九行的数据认为是变量名。

希望对大家有帮助
二维码

扫码加我 拉你入群

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

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

关键词:变量名 单元格 sas import fime

沙发
kamikamy 发表于 2019-3-13 10:30:37 |只看作者 |坛友微信交流群
第一次发帖,刚刚发现有插入代码的功能 = =

  1. PROC IMPORT OUT= file_name
  2.             DATAFILE= "file_address.xlsx"
  3.             DBMS=EXCEL REPLACE;
  4.      RANGE='sheet_name$A9:HA2055'n;
  5.      GETNAMES=YES;
  6.      MIXED=YES;
  7.      SCANTEXT=YES;
  8.      USEDATE=YES;
  9.      SCANTIME=YES;
  10. RUN;
复制代码

使用道具

藤椅
fromthenon 发表于 2019-9-10 17:39:31 |只看作者 |坛友微信交流群
有没有方法能跳过一行不读取,比如读取第1行,和第3行以后的数据。第2行不读取。有一个EXCEL文件,第二行来了个标签。
谢谢!

使用道具

板凳
kamikamy 发表于 2019-9-12 00:34:35 |只看作者 |坛友微信交流群
fromthenon 发表于 2019-9-10 17:39
有没有方法能跳过一行不读取,比如读取第1行,和第3行以后的数据。第2行不读取。有一个EXCEL文件,第二行来 ...
不知道该怎么做,没试过。等待大神

使用道具

报纸
kamikamy 发表于 2019-9-12 00:36:07 |只看作者 |坛友微信交流群
fromthenon 发表于 2019-9-10 17:39
有没有方法能跳过一行不读取,比如读取第1行,和第3行以后的数据。第2行不读取。有一个EXCEL文件,第二行来 ...
不过像你描述的这种,可以直接在excle里修改第一行和第二行的位置,然后按正常方式读取数据。

使用道具

地板
fromthenon 发表于 2019-9-12 08:31:42 |只看作者 |坛友微信交流群
kamikamy 发表于 2019-9-12 00:36
不过像你描述的这种,可以直接在excle里修改第一行和第二行的位置,然后按正常方式读取数据。
谢谢你的思路,这种方法挺好的。
还是希望有能够不改动excel数据的方式导入数据。
也期待大神

使用道具

7
JaneAdrift 学生认证  发表于 2020-1-9 15:59:28 |只看作者 |坛友微信交流群
fromthenon 发表于 2019-9-12 08:31
谢谢你的思路,这种方法挺好的。
还是希望有能够不改动excel数据的方式导入数据。
也期待大神
我觉得可以换个思路,读取后把不要的那几行删掉。另外十分感谢楼主分享跳行读取数据的方法,很有帮助。

使用道具

8
王爷亲 发表于 2023-11-27 17:52:51 |只看作者 |坛友微信交流群
请问RANGE='sheet_name$A9:HA2055'n; 尾部加一个n是啥意思

使用道具

9
oocrescent 发表于 2024-4-11 16:30:55 来自手机 |只看作者 |坛友微信交流群
kamikamy 发表于 2019-3-13 10:30
第一次发帖,刚刚发现有插入代码的功能 = =

使用道具

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

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

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

GMT+8, 2024-11-5 16:22