gpt4 book ai didi

stata - 如何从命令行确定 Stata 文件的 ds_format?

转载 作者:行者123 更新时间:2023-12-04 13:53:39 26 4
gpt4 key购买 nike

我把这个 Perl one-liner 放在一起来确定一些文件的 Stata“ds_format”......
for file in *.dta; do perl -MParse::Stata::DtaReader -e 'open my $fileHandle, "<", @ARGV; my $dta = new Parse::Stata::DtaReader($fileHandle); print "$ARGV[0] is in STATA ds_format " . $dta->{ds_format} ,"\n\n";' $file; done
...但我认为有一种方法可以使用命令行 stata命令来获取相同的信息。在那儿?上面的脚本为我的文件打印:

study1a.dta is in STATA ds_format 113

study1b.dta is in STATA ds_format 115

study2.dta is in STATA ds_format 115



也可以看看:
  • http://www.stata.com/help.cgi?dta_113
  • http://www.stata.com/help.cgi?dta
  • http://search.cpan.org/dist/Parse-Stata-DtaReader/
  • http://stat.ethz.ch/R-manual/R-devel/library/foreign/html/read.dta.html
  • 最佳答案

    现在,您只需读取文件的第一个字符即可确定版本。除了版本文件格式版本 117(当前适用于 Stata 13),版本将存储在 XML 中,因此必须增强此方法。

    file open fhandle using dataset.dta, read binary
    file read fhandle %1s firstbytechar
    file close fhandle
    if "`firstbytechar'"=="<"{
    di "Version 117"
    }
    else {
    mata: st_numscalar("v", ascii("`firstbytechar'"))
    di "Version " v
    }

    关于stata - 如何从命令行确定 Stata 文件的 ds_format?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14158156/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com