楼主: wylkwq
7951 8

[原创博文] 如何合并数据(字段的长度不一样) [推广有奖]

  • 0关注
  • 0粉丝

大专生

80%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
449 点
帖子
42
精华
0
在线时间
34 小时
注册时间
2010-10-28
最后登录
2013-4-1

楼主
wylkwq 发表于 2011-4-11 22:33:20 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我有些csv格式的文件,我用的导入过程,如下
PROC IMPORT OUT= WORK.in0502_temp
            DATAFILE= "×.csv"
            DBMS=CSV REPLACE;
     GETNAMES=YES;
     DATAROW=2;
    导入后我想合并,我用的
merge a b;
by id;
但是在导入过程中由于文件的大小不一想,id字段的长度不一样,我合并后就给我丢失了部分数据
比如在a里面有个个体是123455678,合并后只剩下123456了,因为b表里面id的长度小,我应该如何更改呢
试着用length改变长度发现不行,两个表里面id不同主要在于他们的informat和format的长度不一样,不知道如何修改,谢谢
二维码

扫码加我 拉你入群

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

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

关键词:合并数据 informat informa replace format 瘦西湖 如何 天鹅

沙发
qiumuyuan 发表于 2011-4-11 22:38:50
stata下在变量上单击右键format可以改变变量的属性,不知是否有用。

藤椅
wylkwq 发表于 2011-4-11 23:32:13
好像只有这个办法了,但是太慢了

板凳
sas_user 发表于 2011-4-12 00:20:50
再看看。。

报纸
Isscaliu 发表于 2011-4-12 00:56:31
before merge, define the length of the variable using length statement!!
It was the best of times, it was the worst of times.

地板
sas_user 发表于 2011-4-12 01:53:36
出不来id被切这样的结果呀。 能不能把csv文件贴上来看一看呢?merge 要求变量名,变量类型必须一致,长度以先出现的变量为准。如果要求变量长度一样,可以用lengthstatement定义。
merge a b;
length id $10;
by id;

7
sas_user 发表于 2011-4-12 02:14:26
5# Isscaliu
谢谢提醒。

8
sas_user 发表于 2011-4-12 02:43:39
还可以试试用SAS import wizard 选择user defined format来改变id长度。
或者用data step直接读数据。

9
hktk985211 发表于 2011-4-12 08:41:19
把短字段的长度变大!

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

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