File io 将标量写入Stata中的文件
我想将具有一些预生成值的标量写入文件。这是一个与我试图实现的非常相似的示例,但这些标量没有编写任何输出。正如代码中所示,我试图取消对标量的引用,但没有成功File io 将标量写入Stata中的文件,file-io,stata,scalar,File Io,Stata,Scalar,我想将具有一些预生成值的标量写入文件。这是一个与我试图实现的非常相似的示例,但这些标量没有编写任何输出。正如代码中所示,我试图取消对标量的引用,但没有成功 scalar Sc1b = 11 scalar Sc2b = 22 scalar Sc3b = 33 scalar Sc4b = 44 scalar Sc5b = 55 scalar Sc6b = 66 scalar Sc7b = 77 scalar Sc8b = 88 file open myfile using"C:/m
scalar Sc1b = 11
scalar Sc2b = 22
scalar Sc3b = 33
scalar Sc4b = 44
scalar Sc5b = 55
scalar Sc6b = 66
scalar Sc7b = 77
scalar Sc8b = 88
file open myfile using"C:/mytable.txt", write replace
forvalues i=1/8 {
forvalues q=1/8 {
display `i', `q', `Sc`i'b', ("`Sc`i'b'"), ("`Sc("`i'")b'")
file write myfile ("`i'") _tab ("`q'") _tab `Sc`i'b' _tab ("`Sc`q'b'") _tab ("`Sc("`q'")b'") _n
}
}
file close myfile
这里不需要取消对标量的引用。他们没有临时的名字;您为它们指定了永久名称,因此没有可剥离的别名。我猜想用于编写标量的多个版本的代码都是对正确代码的猜测,并且每个标量只需要一次。为了其他平台上的参考,我还删除了相当具体的Windows参考
scalar Sc1b = 11
scalar Sc2b = 22
scalar Sc3b = 33
scalar Sc4b = 44
scalar Sc5b = 55
scalar Sc6b = 66
scalar Sc7b = 77
scalar Sc8b = 88
file open myfile using "mytable.txt", write replace
forvalues i=1/8 {
forvalues q=1/8 {
display `i', `q', Sc`i'b
file write myfile ("`i'") _tab ("`q'") _tab (Sc`i'b) _n
}
}
file close myfile
但是,请注意,此代码假定没有与标量同名或名称缩写为相同名称的变量。标量和变量共享同一名称空间。如有必要,使用
scalar()
消除歧义 太好了!这回答了我的问题。非常感谢你!