楼主: playmore
3081 5

[原创博文] 如何利用SAS分割文本 [推广有奖]

已卖:1645份资源

学科带头人

2%

还不是VIP/贵宾

-

TA的文库  其他...

R相关

经济学相关

金融工程

威望
1
论坛币
16356 个
通用积分
8.6697
学术水平
372 点
热心指数
394 点
信用等级
341 点
经验
15297 点
帖子
1194
精华
1
在线时间
1332 小时
注册时间
2007-1-11
最后登录
2025-12-1

初级学术勋章 初级热心勋章 中级热心勋章

楼主
playmore 发表于 2012-2-14 11:23:19 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
现在我有一系列的原始数据文件,txt格式的
内容基本格式如下:

A123 214 231 4534
A...
A...
B234 CDF 523 4543
B...
B...

每行前有一个字母标示该行观测属于哪个分表,如前三行都属于表A。也就是说,这个文件把很多表的数据都集中在一张表上了,并且用每行的第一个首字母进行区分。

我想问得是如何处理这样的数据文件。如果要全导入SAS中,再判断,再分割,需要花时间啊,而且不同分表的列属性各不相同,没有办法按列有序的导入,只能一次性导入一行且做为一个字符变量。所以在这里请教高手了,谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:txt格式 数据文件 字符变量 原始数据 请教高手 如何 标示 而且 字母

沙发
zhangzachary 发表于 2012-2-14 11:45:54
data a;
infile "xxx.txt";
input id $1. @1 text $ @2;
run;
寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

藤椅
playmore 发表于 2012-2-14 17:09:08
zhangzachary 发表于 2012-2-14 11:45
data a;
infile "xxx.txt";
input id $1. @1 text $ @2;
多谢,可能你还没有理解我的意思
我是想在导入的时候就根据每行第一个字符把不同的观测输出到不同的表中去
你的代码则是把原表整张导入,且把除第一个字符外的其他字符当作一个字符串了吧?
playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

板凳
zhangzachary 发表于 2012-2-14 17:20:36
playmore 发表于 2012-2-14 17:09
多谢,可能你还没有理解我的意思
我是想在导入的时候就根据每行第一个字符把不同的观测输出到不同的表中 ...
那就 data a b c ...;
        infile ....;
        input id $1. @1 .....;
        if id="A" then output a;
        if id="B" then output b;
        .......
        run;
试试看
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
playmore + 1 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

报纸
playmore 发表于 2012-2-15 09:35:42
zhangzachary 发表于 2012-2-14 17:20
那就 data a b c ...;
        infile ....;
        input id $1. @1 .....;
嗯,这个可以用
但是还有一个问题
就是我这里每个分表的变量都各不相同
用你现在的这个方法可以根据id生成不同的表格
但是每一个表格除id之外就只有一个text的变量了
我想要根据不同的表格设置不同的input变量
不知道这么做可行吗?
谢谢!
playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

地板
zhangzachary 发表于 2012-2-15 10:54:28
playmore 发表于 2012-2-15 09:35
嗯,这个可以用
但是还有一个问题
就是我这里每个分表的变量都各不相同
可以的,我上面在id后面写的text变量只是一个例子,具体的自然应该按照你的需求来定~ 按你的意思,估计要先input id $1. @1 后用@锁定,然后根据if then 来input后面不同需求的变量并output到指定的dataset。不知道你能不能理解?或者你将更详细的要求写下来,我帮你看看~
寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 07:50