news 2026/4/18 8:32:00

如何将 Stata “笔记本” 导出为 HTML

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何将 Stata “笔记本” 导出为 HTML

原文:towardsdatascience.com/how-to-export-a-stata-notebook-to-html-02ec2984da18

在数据项目协作中,有效地分享你的工作至关重要。虽然发送带注释的代码在某些情况下可能足够,但有时这还不够。

我将坦白地说,我不喜欢使用 Stata。从编程角度来看,我发现它的语法非常反直觉。但我的主要问题是,如果你不通过共享数据和 do 文件,不清楚如何分享你的工作,因为其他人可以自己运行它。

如果你们两个人都在使用代码,那没问题。然而,很多时候,其他人只想看到结果并了解你是如何实现的。自己运行代码最多是浪费时间,最坏的情况是成为一项后勤挑战。

尽管如此,我仍然需要使用这个 Stata,因为它在经济学研究中被广泛使用。

但现在我发现了解决这个问题的最佳方法。那就是使用webdoc命令。

在阅读完这篇文章后,你将能够将你的代码,例如,这个:

*Stata code*Name:Your Name*Date:October2024clearallcd"your/directory/"sysuse auto*Regression n°1regress price mpg*Graphs twoway(scatter price mpg)(lfit price mpg)

转换为如下可分享的 HTML 文档:

https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/971b6780cf4b3d7859320074e5d12273.png

作者提供的图片

现在想象一下所有可能的情况!

在这篇文章中,我将涵盖以下内容:

  1. 什么是 webdoc?

  2. 如何安装 webdoc

  3. 如何开始使用 webdoc

  4. 使用 Markdown 而不是 HTML

  5. 添加目录

  6. 格式化你的 HTML 文档(即让它看起来很棒 😎)

我将介绍我认为你可以立即开始使用的基礎工具来有效地分享你的工作。然而,你可以通过查看此命令的官方文档 [1],它也以网络格式提供 这里 来深入了解。

现在,让我们深入探讨!

1. 什么是 webdoc

webdoc 是一个由 Stata 社区贡献的命令,用于处理包含 Stata 命令以及 HTML 或 Markdown 代码片段的 do 文件。

webdoc 的主要目的是生成一个 HTML 文档,该文档显示 Stata 输出与软件结果窗口中显示的相同。

然而,如果你更熟悉这种标记语言,它也可以创建 Markdown 文档。稍后,你可以使用像pandoc这样的其他软件将 Markdown 转换为 HTML,以便更容易与他人分享。

2. 如何安装 webdoc

要能够在 Stata 中使用webdoc命令,你首先需要通过在 Stata 控制台中运行以下行来安装它:

ssc install webdoc,replace

要检查更新,你可以输入:

adoupdate webdoc

安装了 webdoc 后,让我们继续创建第一个包含 Stata 代码和 HTML 注释的 do 文件。

3. 如何开始使用 webdoc

基本的想法是创建一个名为 do 文件的文件。这个文件应该包含 Stata 命令和 HTML 代码的部分。然后,我们可以使用webdoc do命令处理 do 文件。

让我们按照上面提供的示例代码进行操作。首先,我们将使用webdoc init命令在开头设置 do 文件。然后,你想要在 HTML 最终文档中以文本形式出现的每个注释,你都将写作/*** text ***/。下面是如何操作的:

webdoc init example,replace logall/***<html><head><title>Example</title></head><body><h1>Stata code</h1><p>Name:Your Name<p><p>Date:October2024<p>***/sysuse auto/***<h3>Regression n°1\.</h3>***/regress price mpg/***<h3>Graphs</h3>***/twoway(scatter price mpg)(lfit price mpg)webdoc graph,caption(Figure1:Twoway plot of price by milage)cabove///title(price by mpg)attributes(width="100%")/***</body></html>***/

我还添加了webdoc graph命令,以便在上面的代码行中包含由 Stata 创建的散点图。

最后,为了处理你的文件,只需在 Stata 命令面板上运行:

webdoc do example.do

命令将创建 HTML 源文件,然后可以在浏览器中查看,看起来应该像这样:

https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/e659066edf4101c08fbfa200393f4558.png

图片由作者提供

到目前为止,我们使用了logall选项,它告诉软件将所有 Stata 命令和输出包含到最终文档中。但有一些方法可以编辑它。

stlog选项

webdoc stlog有几个选项可以用来操作要包含在输出部分的内容。我使用最多的有:

  • nooutput: 这允许你只显示你运行的命令,但不显示输出。这在清理数据或创建新变量时特别有用。

  • nolog: 与前一个nolog相反,nolog包含输出但不包括刚刚运行的命令。

对于我们一直在跟踪的示例,第二个选项可以适用于图形命令。我们将编辑该部分,使其现在看起来像这样:

/***<h3>Graphs</h3>***/webdoc stlog,nolog twoway(scatter price mpg)(lfit price mpg)webdoc stlog close webdoc graph,caption(Figure1:Twoway plot of price by milage)cabove///title(price by mpg)attributes(width="100%")

4. 使用 Markdown 而不是 HTML

现在,让我们说实话,随着你代码的推进,在 Stata 的注释中编写 HTML 确实是一种痛苦的经历。你可以尝试在你的代码编辑器中打开文档,但需要在软件界面之间切换,这可能有些麻烦。

这就是为什么我更喜欢通过使用 Markdown 而不是 HTML 来格式化 Stata 中的文本。它更简单,更快地适应,因为没有那么多语法需要记住和编写。

如果你不太熟悉 Markdown,我在这里给你留下一个简短的介绍这里。

现在,你只需要使用webdoc init命令的md选项。例如,你可以在 do 文件的开头这样写:

webdoc init example,replace logall md

这使得输出文件使用.md后缀而不是.html

现在,你可以简单地使用 Markdown 编写所有的/*** text ***/

如果我们将前面的示例转换成 Markdown,我们得到如下内容:

webdoc init example,replace logall md/***# Stata codeName:Your Name Date:October2024***/sysuse auto/***### Regression n°1.***/regress price mpg/***### Graphs***/twoway(scatter price mpg)(lfit price mpg)webdoc graph,caption(Figure1:Twoway plot of price by milage)cabove///title(price by mpg)attributes(width="100%")

这看起来不是更干净吗?

将 Markdown 文档转换为 HTML

一旦你创建了一个包含所有注释、代码和输出的 Markdown 文档,你将想要将其转换成一个可分享的 HTML 文档,这是一个用户友好的方式来展示你的工作。

我这样做是通过在我的终端上使用pandoc。如果你已经安装了 pandoc,你可以移动到包含你想要转换的 markdown 文件的目录,然后运行以下代码块:

pandoc example.md-s-o example.html

这将从“example.md”文件中生成一个 HTML 文档。

5. 添加目录

为什么添加目录?

我们将 Stata 代码转换成可共享文档的主要目标是使与我们合作的人更容易访问与他们相关的信息。因此,在展示一段长代码时,添加目录可以极大地帮助您轻松地浏览文档。

如何添加目录?

要从 HTML 文档中的标题生成可点击的目录(TOC),你可以使用webdoc toc命令。

简单地在你想要目录出现的位置的 do 文件中包含该命令。从该位置之后的所有标题将被收集以构建目录。默认情况下,该命令收集标题从

to

.

为了使webdoc toc查找 Markdown 标题,你必须指定如下所示的md选项:

webdoc toc md

6. 格式化 HTML

要编辑文档的外观,最直接的方式是使用与webdoc init命令一起使用的header()选项。

下面是设置最初显示的最终 HTML 文档所使用的代码:

webdoc init example,replace logall md header(title(Stata Code)width(800px)stscheme(ocean)bstheme(cosmo,selfcontained))

子选项title()指定 HTML 文档头部的标签文本,子选项width()设置最大页面宽度。我喜欢使用 800px。

然后是另外两个子选项:stscheme()bstheme(),我将在下面详细解释。

格式化 Stata 输出

通过使用header()选项内的子选项stscheme()来快速开始自定义文档的外观。这个子选项可以用来更改 stata 输出的主题,你可以选择以下选项:标准工作室简单沙漠山脉海洋经典

为了给您一个更好的概念,这里有一张图片展示了每个主题下简单回归的样式。

https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/87a64d3f22ff61d9b646073a8eb51045.png

作者提供的图片

使用 Bootstrap

修改文档的另一种方式是通过使用bstheme()子选项来包含一个 Bootstrap CSS 文件。在示例中,我使用了bootswatch的cosmo主题,但你也可以使用你最喜欢的任何主题。

在包含我们讨论的所有格式化选项之后,你应该能够将初始 HTML 文档转换成如下所示的好看的文档。

https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/a7e290b9895faea856cf5405029e19b1.png

作者提供的图片

结论

使用 webdoc 创建可分享的 HTML 文档为您提供了一个强大的方式,以用户友好的格式展示您的工作。不再需要要求合作者运行您的代码,现在您可以向他们提供他们所需的一切——输出、图表和解释——都在一个地方。

通过有效地使用这些工具,您可以节省时间,并使您的团队能够更容易地专注于结果。下次您在 Stata 中处理数据项目时,尝试使用 webdoc 命令,并将您的协作提升到新的水平。


参考文献

[1] Jann, Ben (2017). 在 Stata 中使用 webdoc 创建 HTML 或 Markdown 文档。Stata 期刊 17(1): 3–38.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 0:21:40

学长亲荐8个AI论文工具,研究生轻松搞定论文格式规范!

学长亲荐8个AI论文工具&#xff0c;研究生轻松搞定论文格式规范&#xff01; AI 工具如何成为研究生论文写作的得力助手 在当今学术研究日益数字化的背景下&#xff0c;AI 工具正逐步成为研究生论文写作的重要辅助。从初稿生成到格式规范&#xff0c;再到降重处理&#xff0c;这…

作者头像 李华
网站建设 2026/3/27 17:20:58

2025专科生必看!9个AI论文工具测评:开题报告与文献综述神器

2025专科生必看&#xff01;9个AI论文工具测评&#xff1a;开题报告与文献综述神器 2025年专科生论文写作新选择&#xff1a;AI工具测评全解析 随着人工智能技术的不断进步&#xff0c;越来越多的专科生开始借助AI工具提升论文写作效率。然而&#xff0c;面对市场上琳琅满目的…

作者头像 李华
网站建设 2026/4/18 3:11:59

AI大模型精准医疗全攻略:从技术架构到应用场景的完整指南

本文详细介绍AI智能体在精准医疗领域的多层级技术架构与应用&#xff0c;涵盖数据整合、分析推理、临床决策支持等功能。系统通过机器学习和NLP技术&#xff0c;在肿瘤学、心脏病学等专科提供个性化诊断与治疗方案。文章探讨了实施验证、伦理监管、经济影响及未来发展方向&…

作者头像 李华
网站建设 2026/4/18 1:53:13

学长亲荐10个AI论文工具,MBA论文写作必备!

学长亲荐10个AI论文工具&#xff0c;MBA论文写作必备&#xff01; AI 工具助力论文写作&#xff0c;高效与精准并存 在当今学术研究日益复杂的背景下&#xff0c;MBA 学生在撰写论文时常常面临时间紧张、内容深度不足以及格式规范不熟悉等多重挑战。而 AI 工具的出现&#xff0…

作者头像 李华
网站建设 2026/4/15 14:41:25

手把手教你使用 Faster-Whisper 实时语音输入转文本,本地部署教程

文章目录前言一、安装环境二、使用步骤1.下载模型2.实时录音转文本脚本总结前言 要想实现像豆包、微信等一样的语音输入功能&#xff0c;通常有两种主流方案&#xff1a;云端 API&#xff08;轻量、准确度极高&#xff09;和 本地模型&#xff08;免费、隐私、无需联网&#x…

作者头像 李华
网站建设 2026/4/11 13:01:16

2025最新!10个AI论文软件测评:研究生写论文痛点全解析

2025最新&#xff01;10个AI论文软件测评&#xff1a;研究生写论文痛点全解析 2025年AI论文软件测评&#xff1a;解决研究生写作难题 随着人工智能技术的不断进步&#xff0c;越来越多的学术研究者开始借助AI工具提升论文写作效率。然而&#xff0c;面对市场上种类繁多的AI论文…

作者头像 李华