楼主: victorliou
1717 8

[数据管理求助] 请问这两个local的命令有什么区别? [推广有奖]

  • 8关注
  • 5粉丝

已卖:1248份资源

副教授

11%

还不是VIP/贵宾

-

威望
0
论坛币
27434 个
通用积分
17.6934
学术水平
11 点
热心指数
6 点
信用等级
10 点
经验
15284 点
帖子
567
精华
0
在线时间
557 小时
注册时间
2005-9-21
最后登录
2025-9-8

楼主
victorliou 发表于 2021-8-29 20:35:57 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
  1. * Example generated by -dataex-. For more info, type help dataex
  2. clear
  3. input str101 qymc str8 brand
  4. "浙江上美输配电有限公司" "美的"  
  5. "湖北千川门窗有限公司"    " 博世"
  6. "深圳市龙图光电有限公司" "千川"  
  7. end
复制代码

1. 第一种方法。
local x  "千川"
list qymc   if strmatch(qymc, "*`x'*")

2. 第二种方法
local j = 3
display brand[`j']
local x  "brand[3]"
list qymc  if strmatch(qymc, "*`x'*")

结束
第一种方法能筛查出所有qym包含“千川”的企业。
第二种方法筛查不出任何企业。
请问为什么?



二维码

扫码加我 拉你入群

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

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

关键词:Local OCA generated generate example

沙发
zdlspace 学生认证  发表于 2021-8-29 22:47:58
请先用你的数据跑一遍第一种代码,看是否有结果。你给的数据支撑不了你的问题

藤椅
victorliou 发表于 2021-8-30 09:43:37
跑过了。第一种方法能筛查出所有qym包含“海尔”的企业。第二种方法筛查不出任何企业。qymc变量中包含很多有“海尔”的企业。

板凳
zdlspace 学生认证  发表于 2021-8-30 11:34:43
victorliou 发表于 2021-8-30 09:43
跑过了。第一种方法能筛查出所有qym包含“海尔”的企业。第二种方法筛查不出任何企业。qymc变量中包含很多 ...
我是说你给的示例数据,并不是让你拿自己的数据跑。把你给的例子跑一下

报纸
wdlbcj 学生认证  发表于 2021-8-30 13:55:43
zdlspace 发表于 2021-8-30 11:34
我是说你给的示例数据,并不是让你拿自己的数据跑。把你给的例子跑一下
确实是,这个例子我跑了一下两个都一样,没有输出的样子,我还寻思哪里出了问题

地板
victorliou 发表于 2021-8-30 21:41:21
我修改了原帖子。谢谢两位!!

7
zdlspace 学生认证  发表于 2021-9-1 11:21:40
区别在于第二种local的嵌套引用,引用的是“brand[3]”这个单词,并不是brand[3]里的数值,如果想引用brand变量的第三个值,应该用嵌套local,

  1. local x  "`=brand[3]'"
  2. list qymc  if strmatch(qymc, "*`x'*")
复制代码

8
zdlspace 学生认证  发表于 2021-9-1 11:25:17
试一下你的数据,
  1. clear
  2. input str101 qymc str8 brand
  3. "浙江brand[3]输配电有限公司" "美的"  
  4. "湖北千川门窗有限公司"    " 博世"
  5. "深圳市龙图光电有限公司" "千川"  
  6. end

  7. local x  "brand[3]"
  8. list qymc  if strmatch(qymc, "*`x'*")
  9.      +----------------------------+
  10.      |                       qymc |
  11.      |----------------------------|
  12.   1. | 浙江brand[3]输配电有限公司 |
  13.      +----------------------------+



  14. local x  "`=brand[3]'"
  15. list qymc   if strmatch(qymc, "*`x'*")

  16.     +----------------------+
  17.      |                 qymc |
  18.      |----------------------|
  19.   2. | 湖北千川门窗有限公司 |
  20.      +----------------------+
复制代码


可以发现根据你的第二种代码,实际上是在搜索名称中包含brand[3]的观测值

9
victorliou 发表于 2021-9-2 16:32:39
thank you very much

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-8 15:26