全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1811 8
2014-11-15
悬赏 150 个论坛币 已解决
我想改问个问题,不需要涉及统计疑问,是关于hash table的:
复制代码
描述:目前我有一个其实很多变量的数据集,我只是列举了一个变量A,然后数据集不能排序。

问题是,按照PDV的顺序载入一张空hash table,当我的key第一次被添加时,hash table的b值为‘q’;
我想问下,当我的key第一次被查找到时,我怎么将hash table中的值‘q'拿出来,反馈到我的PDV中?

谢谢。

最佳答案

yongyitian 查看完整内容

楼主要找的就是 find() 方法 (在hash里叫方法). h.find()在查找到key的同时, 会 set data (把data的值取出, 覆盖PDV中相同变量的值) c=h.check()只查找key的值是否存在,不管data的值.
二维码

扫码加我 拉你入群

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

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

全部回复
2014-11-15 14:32:15
楼主要找的就是  find() 方法 (在hash里叫方法).
h.find()在查找到key的同时, 会 set data (把data的值取出, 覆盖PDV中相同变量的值)
c=h.check()只查找key的值是否存在,不管data的值.

复制代码

二维码

扫码加我 拉你入群

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

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

2014-11-15 22:52:28
问题已改,自己顶下,谢谢
二维码

扫码加我 拉你入群

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

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

2014-11-19 09:23:29
yongyitian 发表于 2014-11-15 14:32
楼主要找的就是  find() 方法 (在hash里叫方法).
h.find()在查找到key的同时, 会 set data (把data的值取 ...
我还想问您个可能比较基础的问题。

就是我们在data步的时候,有用:if 0 then set xxx来利用纯编译读取变量信息到PDV。

那我问下,我有时想建一张空的hash table,需要包含数据集xxx的所有变量属性,然后从PDV往里写东西;
除了h.definedata(all:'y'); + h.clear();还有其他办法吗?
关键是9.1.3中没有h.clear方法,我咋想不到啥其他好的方法呢?。
二维码

扫码加我 拉你入群

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

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

2014-11-19 21:12:13
Tigflanker 发表于 2014-11-19 09:23
我还想问您个可能比较基础的问题。

就是我们在data步的时候,有用:if 0 then set xxx来利用纯编译读取 ...
定义hash时,只要没有 load 数据集,那么建立好的 hash table 就是空的.
但是这样做的时候要在 definekey 和 definedata 语句中列出所有变量.
因为没有数据集,所以 all: 'y' 就不能用了.
变量多的话可以用宏变量.
复制代码
另一个方法是用 iterator 和 remove(). 下面是按照 sas document 中的例子修改的. 并不简单.
复制代码
二维码

扫码加我 拉你入群

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

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

2014-11-20 01:06:50
Tigflanker 发表于 2014-11-19 09:23
我还想问您个可能比较基础的问题。

就是我们在data步的时候,有用:if 0 then set xxx来利用纯编译读取 ...
复制代码
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群