楼主: lizhewenbei
3450 11

请教:如果对某个特定数字(比如“1”或“3”)进行计数? [推广有奖]

  • 15关注
  • 5粉丝

已卖:668份资源

副教授

38%

还不是VIP/贵宾

-

威望
0
论坛币
304 个
通用积分
11.3270
学术水平
4 点
热心指数
13 点
信用等级
5 点
经验
9728 点
帖子
614
精华
0
在线时间
502 小时
注册时间
2008-2-6
最后登录
2025-11-27

楼主
lizhewenbei 学生认证  发表于 2015-1-21 20:05:34 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
DATA tmp;
input id$  num;
cards;
li 12432
ma 2325321
wang 61325
liu 316516136
hu 311321
dong 51165
;
run;

期望结果:
1.png




二维码

扫码加我 拉你入群

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

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

关键词:Input cards Data dong Wang

沙发
yongyitian 发表于 2015-1-21 20:46:47
  1. data want;
  2.    set tmp;
  3.    count_of_1  = count(put(num, best.),'1');
  4. run;
复制代码
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
lizhewenbei + 1 + 1 + 1 + 1 精彩帖子

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

藤椅
lizhewenbei 学生认证  发表于 2015-1-22 10:09:02
yongyitian 发表于 2015-1-21 20:46
请教一下,put(num, best.)是把num变成数值格式吗?但是它本身就是数值格式啊。
倘若我把原始数据改为字符型,那么您给出的程序是否要发生变化?
DATA tmp1;
input id$  num$;
cards;
li sgg12432
ma 23253fds21
wang 613hfsd25
liu 31651hfd6136
hu 311jw321
dong 51wyj165
;
run;
非常感谢

板凳
李会超 发表于 2015-1-22 10:12:08
lizhewenbei 发表于 2015-1-22 10:09
请教一下,put(num, best.)是把num变成数值格式吗?但是它本身就是数值格式啊
本例而言,用count_of_1  = count(num, '1');也可以

报纸
sushe1527 发表于 2015-1-22 10:14:03
李会超 发表于 2015-1-22 10:12
本例而言,用count_of_1  = count(num, '1');也可以
字符也可以的

地板
sushe1527 发表于 2015-1-22 10:14:08
李会超 发表于 2015-1-22 10:12
本例而言,用count_of_1  = count(num, '1');也可以
字符也可以的

7
yongyitian 发表于 2015-1-22 10:48:19
lizhewenbei 发表于 2015-1-22 10:09
请教一下,put(num, best.)是把num变成数值格式吗?但是它本身就是数值格式啊。
倘若我把原始数据改为字 ...
num 原是数值型,put(num, best.) 后变成字符型. best. 是内定的转换格式,有12位. put的结果是长度为12的字符串. 字符串长度不足12时,前面用空格填充.

count 函数内部的变量应是字符串,是数值的时候会自动转换成字符串. 所以所以楼上是正确的.

8
lizhewenbei 学生认证  发表于 2015-1-22 18:58:53
李会超 发表于 2015-1-22 10:12
本例而言,用count_of_1  = count(num, '1');也可以
试过了,谢谢你!

9
lizhewenbei 学生认证  发表于 2015-1-22 18:59:24
sushe1527 发表于 2015-1-22 10:14
字符也可以的
谢谢sushe!

10
lizhewenbei 学生认证  发表于 2015-1-22 19:01:05
yongyitian 发表于 2015-1-22 10:48
num 原是数值型,put(num, best.) 后变成字符型. best. 是内定的转换格式,有12位. put的结果是长度为1 ...
如果我希望同时对“1”和“3”计数呢?把对“1”和“3”计数的结果放在一个变量里面,不能够使用count_of_1or3=count(num, '1|3'),  那么可以怎么编写这个程序呢?

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

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