欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    Stata软件用putexcel命令创建Excel表格-为任意变量编写自定义报表.docx

    • 资源ID:1149566       资源大小:129.34KB        全文页数:8页
    • 资源格式: DOCX        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Stata软件用putexcel命令创建Excel表格-为任意变量编写自定义报表.docx

    Stata软件用putexcel命令创建Excel表格-为任意变量编写自定义报表在之前的博文中演示了如何使用putexcel在Excel中重现常见的Stata输出.今天将演示如何为任意变量创建自定义报表.创建单元格计数与行百分比相结合,以与具有标准偏差方法的表.但是你可以修改下面的例子包括列的百分比,百分点、标准误差、置信区间或任何统计.使用本地宏将变量名传递到我的程序中.通过将新变量名赋予宏,可以为任意变量创建相同的报表.您可以通过创建每个报表的do-file并将变量名传递到do-file来扩展这个想法.这是我们在Excel中自动创建报表的又一重要步骤.今天的文章包含了几个大的代码组.这是因为每个示例都包含了前面示例中的代码以与新的代码行.虽然允许在整个程序的上下文中看到新代码,但它也使新代码的出现需要更长的时间.代码组中的大部分代码与示例相同.案例1:将返回结果写入Excel我们使用tabulate创建一个sex和race的单元格计数矩阵.输入但是我想把任何两分类变量放入表格中,所以在本地宏RowVar中保存sex数据,在本地宏ColVar中保存race数据.现在可以使用相应的本地宏将sex和race列成表.单元格计数保存在矩阵cellcounts中.通过tabulate可以输入return list来查看标量返回列表.观察的总数保存在标量Rn中,行数保存在Rr中,列数保存在Rc中.为了以后可以使用这些标量,可以将其保存在本地宏中.案例2:循环行和列我可以使用保存的行和列的计数来循环矩阵cellcounts的每个单元格.在矩阵中循环每个单元格使我们能够格式化每个单元格中的数字和/或使用的数字来计算另一个数,如百分比.案例3:char<>的功能矩阵的行和列都用数字来索引.Excel表的行用数字来索引,列用字母索引.在Excel中使用char<>功能可以将矩阵的列数字转换成列字母.char<>函数的参数是一个ASCII码和函数返回对应的ASCII码.比如,char<65>返回字母"A" char<66>返回字母"B"等等.我们可以在循环中使用函数char<64 + col>来将矩阵中的列数字转化为Excel表格的列字母.下面代码1中的第4行将单元格名称保存到本地宏Cell中.可以使用第四行"row'" 而不是string<row>.但是我始终需要string<> 的功能,所以为了连贯性这里还是使用了.第5行使用putexcel写入Cell的值与Excel中的单元格对应.案例4:将单元格计数写入ExcelCode block 2演示如何将矩阵中的单元格计数写入Excel表.Code block 2的第四行单元格计数从矩阵cellcounts保存到本地宏CellContents中,第五行Excel 表中将目标单元格保存到本地宏Cell中,并且第六行在Excel表中使用putexcel将CellContents写入Cell中.案例5:将行百分比写入Excel我希望将行百分比写入Excel表而不是单元格计数.我需要单元格计数和行合计来计算行百分比.Code block3 下面第三行的tabulate命令将行总数保存到矢量rowtotals里.11行将单元格计数保存到本地宏cellcount里.12行计算和格式化单元格百分比并且将其保存在本地宏cellpercent.13行将"%"符号增加到cellpercent里并且将生成的字符串保存到本地宏CellContents里.案例6:将单元格计数和行百分比写入Excel将单元格计数和行百分比写入每个单元格.可以通过修改上面Code block 3 的第13行来实现.下面Code block 4的第13行将cellcount和cellpercent都保存在本地宏CellContents中.案例7:在Excel表格中添加行标签接下来在Excel表格中添加行标签.可以在Excel表中输入"女性"和"男性",但我希望能够更改程序顶部的行变量,并自动标记行.值的标签比如"0 =女性"和"1 =男性"被定义使用label define并且标签被附加到使用 label values变量.如果输入describe sex,可以看到附加的值标签sex被命名成SexLabel.通过输入 label list SexLabel可以看到SexLabel的定义.可以使用变量名来访问所有关于变量值标签的信息.当前行变量的名字,sex保存在本地宏RowVar中.可以使用下面的宏列表函数保存价值标签RowVar到本地宏RowValueLabel中.可以使用levelsof将RowVar的数字分类到本地宏RowLevels中.使用words<>功能可以参考RowLevels中的每一个数字分类,比如,本地宏RowLevels里面第一个"word"是"0".通过使用下面宏列表功能可以将"word"保存到本地宏RowValueLabelNum中.通过使用下面宏列表功能可以将与"0"相关的标签保存到本地宏RowLabel里面.使用同样的方法来保存sex的第二分类.下面Code block 5 包含这些命令用于提取RowVar的价值标签并且使用putexcel将标签写入Excel表中.首先将Excel表的单元格向下移一行并且向右移一列.这将为之后添加的行标签和列标签让出空间.通过在char<> 和 string<>功能中加1,下移和右移表格来调整16行和23行.第8行RowVar的价值标签保存在本地宏RowValueLabel中.第9行RowVar数字分类保存在本地宏RowLevels中.第14-17行提取每个数字分类相关的标签并将其写入Excel表格中.案例8:在Excel表中添加行总数下面在Excel表中添加行总数.将行总数保存在之前的矩阵rowtotals中,这样可以计算行的百分比.所以只需将矩阵的值写入到Excel表中.下面Code block 6 的第3行将行总数保存到矩阵rowtotals中.9-12行提取rowtotals中的每一行的总数并且将其写入到Excel表中.注意通过添加2到20行的char<> 功能中,将一列的行总数写入到Excel表的右侧.案例9:在Excel表格中添加列标签和总数使用相同的方法可以增加列标签和总数.在下面Code block7的第4行中,保存列总数到矩阵coltotals中.第12行保存价值标签ColVar到本地宏ColLevels中,并且第13行保存ColVar的数字分类到本地宏ColLevels中.34-43行把价值标签和列总数写入Excel 表单中.只需要将信息一次性写入Excel 中,当条件满足 if row=1时我就可以指定只运行这些行.案例10:形成一个Excel表现在Excel表中有了所有的数字和标签,我想添加边框线使之更容易阅读.下面Code block 8的第49-50行,输入的总计数在表的右下角.52-53行标记总列数,55-56标记总行数.我想添加边框线来指定单元格范围,比58-73行的实现方式还要简洁,但是代码可能比较难懂.58-61行定义表格的四个角并保存到本地宏UpperLeft, UpperRight,BottomLeft和BottomRight中.63-73行使用这4个单元格来定义单元格区域,并在EXCEL表格中添加边框线.案例11:为任意变量创建Excel表现在你可能会怀疑是否需要花时间使用该方法将表格写入Excel中.写这个程序的时间,都可以手工创建Excel表了.但是我想创建这个表并且需要多次使用,这个方法会节省大量时间.比如,可以在下面Code block 9第1和2行中通过简单的切换变量赋值来切换表中的行和列.案例12:在分类变量水平上为连续变量创建表格案例1-11演示了如何为两分类变量创建一个表格.我可以用类似的方法为分类变量的多级连续变量创建一个汇总统计表.首先为分类变量race创建一个列标题.下面Code block 10的代码看起来像案例1-11使用的代码.唯一不熟悉的代码出现在第6行,将变量标签保存在本地宏ColVarLabel中.然后将变量标签写入到25和26行列标签上方的合并单元格中.案例12接上:接下来,可以添加一个行,其中包含race每个级别的age平均值和标准偏差.在下面Code Block 11的第2行开始保存age到本地宏ContVar中.第12行计算平均值和标准偏差的条件是if ColVar=ColLevel为真实的值.你可能想使用条件 if ColVar=col但是最好不要使用.分类变量的级别往往是编号顺序从1开始的整数<比如"1,2,3.">.但这并不总是正确的.比如,指示变量,像性别就是从0开始编号的.Sex有2个分类,所以如果我们使用条件 if sex=1,我们会看到男性的结果但不会看到 if sex=2的结果.我们从来不会考虑条件 if sex=0.21行格式化返回的均值r<mean>,以小数点的形式显示并保存到本地宏RowMean中.22行格式化返回的标准偏差r<sd>,显示到小数点后一位并且保存在本地宏RowSD中.15行将RowMean和RowSD合并将结果保存在本地宏CellContents中.20-25行重复计算列总数,26-27行将变量名字age写到Excel表中.结语希望本文能够鼓舞你而不是吓到你.为任意变量创建自动报告不是一件快速和容易的事情.但是手动生成这些表格可能是费时和令人沮丧的.如果你曾经只为一个手稿花时间排版表,有一个审稿人认为你修改的分析在某种程度上改变了所有的表格,你应该明白我在说什么.或者每周或每月运行定期更新数据的报告.从长远来看,编写程序实现自动化Excel表格,可以为以后节省更多的时间.将消除手动创建表格时可能出现的错误.

    注意事项

    本文(Stata软件用putexcel命令创建Excel表格-为任意变量编写自定义报表.docx)为本站会员(李司机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开