楼主: wangzt
7904 19

Stata新人,小问题,送金币,已更新! [推广有奖]

11
arlionn 在职认证  发表于 2008-1-14 16:07:00
以下是引用sillyfeng在2008-1-13 13:09:00的发言:

我也觉得stata的数据库功能不够强大,还好有stat transfer

我觉得不可以如此武断,跑不快很多时候不是车不好。

12
danVdan 发表于 2008-1-14 23:16:00

第6个问题 你不用SAVE 原数据文件不就没事么

也可以每次建个临时文件 

我怎么感觉数据在EXCEL 改好了  进STATA 就操作  不保存最好

13
arlionn 在职认证  发表于 2008-1-15 08:31:00
以下是引用wangzt在2008-1-13 4:08:00的发言:

可能都是比较弱的问题,刚刚开始用stata,其实我的计量基础也超烂,不过还是希望得到一些帮助。我下了一些材料,像manual什么的,但想要找到我想知道的东西并不容易。而一些问题往往是很简单的。为了表示感谢会发一些金币!

查看已解决问题看这里,凡对已解决问题进行更新或完善的都有奖励以示感谢!

5、在do file里面,能够让一些行的命令结果不显示吗?比如在其他一些软件在一行的末尾加上一个;就可以了,我发现在stata里不行啊。(3金币)

只需要在相应的命令前加 quietly 即可, 如

sysuse auto
qui reg price weight

如果希望一段语句都不显示结果(通常用于编程),可采用如下方式:

qui {

    命令 ....

}

14
arlionn 在职认证  发表于 2008-1-15 08:39:00
以下是引用wangzt在2008-1-13 4:08:00的发言:

可能都是比较弱的问题,刚刚开始用stata,其实我的计量基础也超烂,不过还是希望得到一些帮助。我下了一些材料,像manual什么的,但想要找到我想知道的东西并不容易。而一些问题往往是很简单的。为了表示感谢会发一些金币!

查看已解决问题看这里,凡对已解决问题进行更新或完善的都有奖励以示感谢!

6、如果我通过drop或keep命令误删了一些数据,我能够通过重新读取原数据而恢复吗?我的意思就像是在word里面按Ctrl+Z一样,撤消上一步操作。因为总有时操作失误,想马上改回来的!

我们使用drop,keep命令的目的无非是修改样本或删除样本,最终有两个目的,一是对修改后的样本作统计或回归分析,二是保存一份新的数据。所以,你的问题解决方法如下:

1. 使用 do 文档记录你的分析过程,这样你每次只需要修改你的do文档即可,任何误删和尝试性的操作都是可以的。

如 use auto, clear

     keep weight length

需要注意的是,在退出stata窗口时,不要选择 save , 你只要保存 do 文件即可。

2. 如果你是使用命令窗口的话,就可以在每次执行一个尝试性的动作之前使用 preserve 命令,如果这个操作有误,再采用restore命令(相当于word里的ctrl+Z)返回使用preserve之前的状态即可. 如

   use auto, clear

   .....

   preserve   /*状态1*/

      keep weight

   restore     /*回复到状态1*/

15
arlionn 在职认证  发表于 2008-1-15 08:44:00
以下是引用wangzt在2008-1-13 4:08:00的发言:

可能都是比较弱的问题,刚刚开始用stata,其实我的计量基础也超烂,不过还是希望得到一些帮助。我下了一些材料,像manual什么的,但想要找到我想知道的东西并不容易。而一些问题往往是很简单的。为了表示感谢会发一些金币!

查看已解决问题看这里,凡对已解决问题进行更新或完善的都有奖励以示感谢!

7、既然Stata可以自己编写ADO文件,那么我认为Stata就是可以无限扩展的。要比SAS,SPSS强大得多。只要有想法就能够实现,而至于我这样新手的想法99.99%都是别人早已经想到的。也就是说我的关于计量的任何要求都能够通过Stata实现,而99.99%是已经实现的了的,只要我弄清楚别人是怎么做的就行了,而0.01%的可能是别人没有想到的,或是在99.99%中能够找到更好的替代。我的理解不对吗?

你的想法基本正确,问题在于把计量文献中的想法或理论模型转化为stata程序是需要成本的(时间、精力),所以并不是每个想法都有人去实现。不过,相对于其他软件,stata使用者算是非常勤奋了,能把多数(<99.99%)想法都转化为stata程序。

求人不如求己,所以我们自己最好还是学着写程序,有时候老外虽然写好了程序,但在最初的1-2年里,他不会轻易与你共享的,因为那也是别人的千辛万苦做出来的。

16
arlionn 在职认证  发表于 2008-1-16 12:37:00
以下是引用wangzt在2008-1-13 4:08:00的发言:

可能都是比较弱的问题,刚刚开始用stata,其实我的计量基础也超烂,不过还是希望得到一些帮助。我下了一些材料,像manual什么的,但想要找到我想知道的东西并不容易。而一些问题往往是很简单的。为了表示感谢会发一些金币!

c(current_time)代表当前时间,那么当前日期的函数是什么呢?我想在字符串里再加上日期!

参考arlionn提供的程序:
local fn = subinstr("`c(current_time)'",":","",2)
log using E:\data\stata\do\s`fn'.log, text replace

查看已解决问题看这里,凡对已解决问题进行更新或完善的都有奖励以示感谢!

感谢:arlionn Arlion 的博客很好,很强大,强烈建议收藏。。。。


你可以输入 help creturn 命令,里面有个  c(current_date)  函数,利用这个函数就可以达到你的目的。

搞定后与大伙分享一下吧,呵呵。

17
wangzt 发表于 2008-1-16 19:50:00

搞掂

local fn = subinstr("`c(current_time)'",":","",2)
local fn1 = subinstr("`c(current_date)'"," ","",2)

log using E:\data\stata\do\s`fn1'`fn'.log, text replace
cmdlog using E:\data\stata\do\c`fn1'`fn'.log, replace

18
arlionn 在职认证  发表于 2008-1-17 08:23:00

引用一下,呵呵

19
arlionn 在职认证  发表于 2008-2-1 12:09:00
以下是引用wangzt在2008-1-16 19:50:00的发言:

搞掂

local fn = subinstr("`c(current_time)'",":","",2)
local fn1 = subinstr("`c(current_date)'"," ","",2)

log using E:\data\stata\do\s`fn1'`fn'.log, text replace
cmdlog using E:\data\stata\do\c`fn1'`fn'.log, replace

今天是2月1号,打开stata时发现上面的设置有一点小问题,修改如下:

local fn = subinstr("`c(current_time)'",":","",2)
local fn1 = subinstr("`c(current_date)'"," ","",3)

log using E:\data\stata\do\s`fn1'`fn'.log, text replace
cmdlog using E:\data\stata\do\c`fn1'`fn'.log, replace

20
cham430072 发表于 2008-3-26 20:47:00

stata还是比较好用的。我这里有一个比较好的教程,楼主可以做个参考

201104.rar (2.06 MB)


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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-17 22:31