楼主: superguy333
3917 21

[原创博文] 一道非常有技术含量的编程题 [推广有奖]

  • 1关注
  • 1粉丝

硕士生

32%

还不是VIP/贵宾

-

威望
0
论坛币
63 个
通用积分
0.0786
学术水平
19 点
热心指数
33 点
信用等级
13 点
经验
2610 点
帖子
164
精华
0
在线时间
145 小时
注册时间
2009-12-7
最后登录
2022-12-1

楼主
superguy333 发表于 2012-4-26 23:55:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求从表A--->表B  的转换代码
详见下面的附图和附件。
求高手解答,谢谢了!
二维码

扫码加我 拉你入群

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

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

关键词:技术含量 求高手解答 求高手 技术

未命名2.jpg (34.07 KB)

转换后表B

转换后表B

未命名1.jpg (41.5 KB)

原始表A

原始表A

数据表.xls
下载链接: https://bbs.pinggu.org/a-1100180.html

9 KB

相关数据表

回帖推荐

chendonghui1987 发表于6楼  查看完整内容

这个20.31写错了吧 程序代码如下: data work.a; length a $9. q $10. j $10. z 8.; input a $ q $ j $ z; a = substr(a,1,7); datalines; 545205902 卷轴印 外单位 0.74 545205904 卷轴印 外单位 0.86 112572306 擦划伤 C102 1.202 112572307 擦划伤 C102 2.318 112631801 退火氧化 C103 1.275 112631802 卷取擦伤 C103 2.109 112656006 卷取擦伤 C103 2.146 112656106 卷取擦伤 C103 1.202 113027 ...

本帖被以下文库推荐

沙发
pengsuisheng 发表于 2012-4-27 00:01:31
bu rongyi ,jiayou!

藤椅
yancong529 发表于 2012-4-27 00:04:57
用Excel处理相当easy
对于号码列,输入公式“=left(A1,7)”,向下填充就行了,然后找一张干净的表,选择性粘贴→数值
对于第二个,输入公式“=concatenate(B1,"/",C1,"/",D1)”,这里面的"/"双引号必须是英文状态下的双引号,然后继续选择性粘贴→数值
醉舞经阁半卷书,坐井谈天阔

板凳
yancong529 发表于 2012-4-27 00:05:41
给个好的评分哈
醉舞经阁半卷书,坐井谈天阔

报纸
王洛轩 发表于 2012-4-27 00:45:32
1126318那样的符合数据多吗

地板
chendonghui1987 发表于 2012-4-27 00:54:36
1.bmp
这个20.31写错了吧

程序代码如下:
data work.a;
        length a $9. q $10. j $10. z 8.;
        input a $ q $ j $ z;
        a = substr(a,1,7);
        datalines;
545205902         卷轴印        外单位        0.74
545205904         卷轴印        外单位        0.86
112572306         擦划伤        C102        1.202
112572307         擦划伤        C102        2.318
112631801         退火氧化        C103        1.275
112631802         卷取擦伤        C103        2.109
112656006         卷取擦伤        C103        2.146
112656106         卷取擦伤        C103        1.202
113027103         擦划伤        C103        2.031
113417906         擦划伤        C102        1.422
113884907         边浪            C103        4.756
114004405         肋排印        C137        2.453
114004406         肋排印        C137        2.6
;
run;


proc sql noprint;
        create table work.b as
                select distinct a,
                        q,
                        j,
                        sum(z) as sum
                from work.a
                group by a,q,j
                order by a;
quit;

data work.c(keep = b c);
        length b $7. c $50.;
        set work.b;
        by a;

        b = substr(a,1,7);
        if first.a then do;
                c = catx('/',q,j,sum);
                retain c;
        end;else do;
                d = catx('/',q,j,sum);
                c = catx('  ',c,d);
                retain c;
        end;

        if not last.a then delete;

        label b = '母卷号=号码前7位';
        label c = '缺陷汇总简述情况';
run;



7
wxl2012 发表于 2012-4-27 08:42:58
经典!

8
yancong529 发表于 2012-4-27 12:17:47
更正:要用数据透视表处理一下
醉舞经阁半卷书,坐井谈天阔

9
superguy333 发表于 2012-4-27 22:47:02
chendonghui1987 发表于 2012-4-27 00:54
这个20.31写错了吧

程序代码如下:
112631801  
112631802
112631803
112631804
112631805
112631806
112631807
等,如果相同母卷(前7位)对应的分卷(后2位)过多,这样好像需要修改吧,最多可能有20个分卷

10
chendonghui1987 发表于 2012-4-28 09:29:31
楼主说这些是什么意思.

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 01:55