log 命令——记录你的分析过程

Syntax

报告日志文件的状态

log

log query [logname | _all]

打开日志文件

 log using filename [, append replace [text|smcl] name(logname) nomsg]

关闭日志

log close [logname | _all]

暂时挂起日志记录或恢复日志记录

log {off|on} [logname]

报告命令日志文件的状态

cmdlog

打开命令日志文件

cmdlog using filename [, append replace]

关闭命令日志,暂时挂起日志记录或恢复日志记录

cmdlog {close|on|off}

设置日志的默认格式

set logtype {text|smcl} [, permanently]

指定屏幕宽度

set linesize #

除了使用log命令之外,您还可以通过从菜单中选择File> Log并选择列表中的一个选项来访问日志功能。

Description

log及其子命令告诉Stata打开日志文件,并创建一个记录,显示你输入的内容以及结果窗口中显示的任何输出,暂停或恢复日志记录,检查日志记录状态以及关闭日志文件。
默认格式是Stata标记和控制语言(SMCL),但也可以是纯文本。一次最多可以打开五个SMCL和五个文本日志。
cmdlog及其子命令与log类似,但创建的命令日志仅记录您键入的内容,并且只能是纯文本。 您可以只在一个时间设置logtype打开一个命令日志,并设置linesize是控制与日志相关的系统参数的命令。

Options for use with both log and cmdlog

append: 指定将结果追加到现有文件中。如果文件不存在,将创建一个新文件。
replace: 指定文件名(如果已经存在)被覆盖。当您没有指定替换或追加时,该文件被认为是新的。如果指定的文件已经存在,则会发出错误消息,并且不会启动日志记录。

Options for use with log

text and smcl:指定记录日志的格式。默认值描述起来很复杂,但却是您所期望的:
如果将文件指定为filename.smcl,则默认为以SMCL格式写入日志(无论set logtype的值如何)。
如果您将文件指定为filename.log,默认情况下是以文本格式写入日志(不管设置日志类型的值如何)。
如果键入不带扩展名的filename并且既未指定smcl选项也未指定text选项,则默认为根据set logtype的值写入文件。 如果尚未设置logtype,则默认为SMCL。 此外,如果正在创建SMCL日志,则指定的文件名将固定为读取filename.smcl;如果正在创建文本日志,则将修复为filename.log。
如果您指定text or smcl选项,那么您指定的内容将决定如何写入日志。如果指定的文件名没有扩展名,则会为您添加适当的扩展名。
如果打开多个日志文件,则可以为每个文件选择不同的格式。
name(logname): 指定可用于在日志打开时引用日志的可选名称。 您可以启动多个日志文件,为每个日志文件指定一个不同的日志名称,然后逐个关闭,暂时挂起或恢复它们。 默认日志名称为
nomsg: 禁止显示日志文件顶部和底部的默认消息。 此消息由日志名称(如果在name()中指定,否则为未命名),日志路径,日志类型以及打开或关闭的日期组成。

Option for use with set logtype

永久指定除了立即进行更改外,还要记住日志类型设置,并在调用Stata时成为默认设置。

Remarks

完整日志是一个文件,其中包含您键入的内容以及结果窗口中显示的Stata输出。 要开始记录会话,请使用filename键入log。 如果filename包含嵌入的空格,请记住将其用双引号括起来。
当默认日志格式为SMCL时,如果指定了没有文件名,则log将添加扩展名.smcl。 如果指定了文本或将默认日志类型更改为文本,则日志会添加扩展名.log。
我们建议使用SMCL,因为它保留了字体和颜色。 可以从查看器窗口查看和打印SMCL日志,任何文本文件也可以; 见[R]视图。 控制台Stata的用户可以使用translate来生成可打印版本的日志文件。 translate还可以将SMCL日志转换为文本或其他格式,例如PostScript或PDF; 见[R]翻译。

Examples

. log using mylog

. log close

. log using mylog, append

. log close

. log using "filename containing spaces"

. log using firstfile, name(log1) text

. log using secondfile, name(log2) smcl

. log using thirdfile, name(log3) smcl

. log query _all

. log close log1

. log close _all

Stored results

log and cmdlog store the following in r():

Macros         
r(name)             logname
r(filename)         name of file
r(status)           on or off
  r(type)             smcl or text

log query _all stores the following in r():

Scalars        
  r(numlogs)          number of open log files

For each open log file, log query _all also stores

Macros         
  r(name#)            logname
  r(filename#)        name of file
  r(status#)          on or off
  r(type#)            smcl or text

where # varies between 1 and the value of r(numlogs). Be aware that # will not necessarily represent the order in which the log files were first opened, nor will it necessarily remain constant for a given log file upon multiple calls to log query.

help log

*------------------------------------开始记录-------------
 cap log close
 log using mypaper.log, text replace  

  *-调入数据
    use "fullauto.dta", clear
  *-Table 1
    tabstat price weight length mpg foreign
  *-Table 2
    pwcorr  price weight length mpg foreign 
  *-Table 3
    reg     price weight length mpg foreign
    est store m0
    reg     price weight length mpg if foreign==1
    est store m_f
    reg     price weight length mpg if foreign==0
    est store m_d
    esttab m0 m_f m_d, mtitle("All Foreign Domestic") ///
           b(%4.3f) nogap compress replace            ///
           s(N r2_a) star(* 0.1 ** 0.05 *** 0.01) 
 log close                           // 
*------------------------------------结束记录------------
 shellout mypaper.log

你可能感兴趣的:(log 命令——记录你的分析过程)