楼主: jdzz
1077 4

[编程问题求助] 请看看这段简单循环问题在哪? [推广有奖]

已卖:111份资源

教授

16%

还不是VIP/贵宾

-

威望
0
论坛币
5006 个
通用积分
311.3593
学术水平
13 点
热心指数
15 点
信用等级
9 点
经验
24799 点
帖子
795
精华
0
在线时间
804 小时
注册时间
2010-2-4
最后登录
2024-12-23

楼主
jdzz 发表于 2015-12-16 20:23:11 |AI写论文
3论坛币
粘贴过来:


forvalues i= 6,9 {
        destring A`i', ge (a`i')
}


总提示invalid syntax。试过很多次,其他不动,numlist 只有用“\”表示时,才能运行,逗号,空格都不行。

最佳答案

夏目贵志 查看完整内容

改成下面这样应该就可以了 也可以这样
关键词:单循环 forvalues forvalue destring invalid invalid

沙发
夏目贵志 发表于 2015-12-16 20:23:12
改成下面这样应该就可以了
  1. foreach i in 6 9 {
  2.         destring A`i', ge (a`i')
  3. }
复制代码
也可以这样
  1. forvalues i =6(3)9 {
  2.         destring A`i', ge (a`i')
  3. }
复制代码



藤椅
jdzz 发表于 2015-12-17 09:37:44
夏目贵志 发表于 2015-12-17 00:38
改成下面这样应该就可以了
也可以这样
谢谢回复,确实

但我查看help,forvalues的语法结构就是这样:
        forvalues lname = range {
                commands referring to `lname'
        }
并没有限制等号之后range的形式,stata十八讲里在forvalues这部分列举了包括逗号隔开等多种numlist的表示形式。

板凳
夏目贵志 发表于 2015-12-17 09:51:24
jdzz 发表于 2015-12-17 09:37
谢谢回复,确实

但我查看help,forvalues的语法结构就是这样:
forvalues的形式我印象里一直是由限制的。文档里是这样的:
  1. Syntax

  2.         forvalues lname = range {
  3.                 commands referring to `lname'
  4.         }

  5.     where range is

  6.                                    #1(#d)#2      meaning #1 to #2 in steps of #d     
  7.                                    #1/#2         meaning #1 to #2 in steps of 1      
  8.                                    #1 #t to #2   meaning #1 to #2 in steps of #t - #1
  9.                                    #1 #t :  #2   meaning #1 to #2 in steps of #t - #1
复制代码

报纸
jdzz 发表于 2015-12-17 09:54:17
夏目贵志 发表于 2015-12-17 09:51
forvalues的形式我印象里一直是由限制的。文档里是这样的:
嗯,谢谢,这样让人觉得好乱

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-29 19:51