首页 热门文章

Stata怎么查看数据?6种常用命令带你摸清数据底细

时间: 2026-01-05    浏览量: 18256

对于刚接触Stata的人来说,导入数据之后最自然的反应就是:让我看看这些数据长什么样。Excel有表格,SPSS有数据视图,Stata里怎么看?其实Stata提供了非常丰富的查看数据的方式,从浏览整个数据集到检查变量的统计特征,从列出部分观测到查看数据结构,每种方法都有它的用途。今天就来系统梳理一下,Stata里到底怎么查看数据。

准备工作:导入示例数据

在开始讲解之前,我们先导入Stata自带的示例数据auto.dta,这样大家可以在自己的Stata里跟着操作,看到同样的结果。

sysuse auto, clear

这条命令会加载1978年美国汽车数据,包含价格、油耗、维修记录等变量。有了这个数据,我们就可以开始各种查看操作了。

方法一:browse——像表格一样浏览数据

最直观的查看方式就是用browse命令。它会打开一个类似Excel的表格窗口,让你可以滚动查看所有变量和所有观测值。

browse

执行后,Stata会弹出一个数据编辑器窗口,里面每一行是一个观测(这里是一辆汽车),每一列是一个变量(如价格、油耗等)。你可以用鼠标拖动滚动条,随意查看任意位置的数据。

如果只想看部分变量,可以在browse后面指定变量名:

browse make price mpg rep78

这样表格里就只显示这4个变量,其他变量被隐藏,看起来更清爽。

如果只想看部分观测,可以用in或if条件:

browse make price mpg in 1/10

这条命令只显示前10行数据。


browse make price if foreign == 1

这条命令只显示进口车(foreign=1)的数据。

browse命令的最大优点是直观,你看到的就是数据原本的样子。但它也有缺点:如果数据量很大,比如几十万行,滚动浏览会变得很慢,而且你很难从这种原始表格中获得对数据的整体认识。

方法二:list——在结果窗口列出数据

如果你不想打开新窗口,想在Stata的结果窗口里直接看到数据,可以用list命令。

list make price mpg in 1/10

执行后,结果窗口会显示一个表格,包含指定的变量和观测。这对于快速查看少量数据非常方便。

和browse一样,list也支持条件筛选:

list make price mpg if foreign == 1

如果数据量很大,直接用list不加限制可能会在结果窗口输出几千行,导致滚动很久,一般不推荐这样做。

方法三:describe——查看数据整体结构

browse和list让你看到数据的具体内容,但有时你更想了解数据的整体结构,比如有多少变量、多少个观测、每个变量是什么类型、有没有标签。这时就该用describe命令了。

describe

输出结果会告诉你几个重要信息:

  • 数据集的名称和路径

  • 观测值数量(obs)

  • 变量数量(vars)

  • 每个变量的名称、存储类型、显示格式、变量标签

如果你想看更详细的变量信息,可以加detail选项:

describe, detail

这会额外显示每个变量的具体属性,包括是否有序、是否已定义值标签等。

如果只关心某个或某几个变量,可以在describe后面指定变量名:

describe make price mpg

方法四:summarize——查看统计摘要

describe告诉你数据结构,而summarize告诉你数据的统计特征。这是查看数据时最常用的命令之一。

最简单的用法:

summarize

Stata会列出所有数值型变量的观测数、均值、标准差、最小值和最大值。

如果想看更详细的统计量,包括百分位数、峰度、偏度等,可以加detail选项:

summarize price mpg weight, detail

这会对指定的变量输出更详细的统计信息,包括1%、5%、10%、25%、50%、75%、90%、95%、99%分位数,以及方差、峰度、偏度等。

summarize命令是了解数据分布、发现异常值的利器。比如你发现某个变量的最小值或最大值明显不合理,就可以进一步检查。

方法五:codebook——查看变量详细信息

如果你想深入了解某个变量,比如它有哪些取值、每个取值有多少观测、有没有缺失值,可以用codebook命令。

codebook rep78

输出结果会告诉你:

  • 变量类型和范围

  • 唯一值的数量

  • 每个取值的频数和百分比

  • 缺失值的数量

  • 如果有值标签,还会显示标签对应的含义

对于分类变量,codebook特别有用。比如rep78是汽车维修记录评分,取值1到5,用codebook可以清楚地看到每个评分有多少辆车。

如果对整个数据集用codebook:

codebook

它会逐一显示每个变量的详细信息,对于数据集较大的情况输出会很长,建议指定具体变量。

方法六:tabulate——查看分类变量的分布

对于分类变量,tabulate命令是查看分布的利器。

tabulate foreign

输出会显示进口车和国产车的频数、百分比和累计百分比。如果加选项,还可以同时显示更多信息:

tabulate foreign, nolabel

这个命令会显示原始数值而不是标签。

tabulate foreign, missing

这个命令会把缺失值也计入统计。

如果想看两个分类变量的交叉分布,可以用:

tabulate foreign rep78

这会生成一个二维表格,显示不同产地和不同维修评分的组合频数,对于发现变量间的关系很有帮助。

检查缺失值

数据中难免有缺失值,及时发现和处理缺失值是数据清洗的重要步骤。用misstable命令可以快速查看缺失情况。

最简单的用法:

misstable summarize

这会列出每个变量的缺失值数量。如果某个变量缺失很多,需要重点关注。

如果想看哪些观测有缺失值,可以用:

misstable pattern

这个命令会显示缺失值的分布模式,比如哪些变量经常一起缺失,对于理解缺失原因很有帮助。

检查重复值

有时候数据中可能存在重复观测,需要用duplicates命令检查。

查看是否有重复值:

duplicates report

这会报告数据集中唯一值的数量、重复值的数量等信息。

如果想查看具体的重复记录,可以用:

duplicates list

或者指定某个变量作为识别依据,比如根据汽车型号检查是否有重复:

duplicates list make

变量命名的检查

用lookfor命令可以在变量名和变量标签中搜索关键词,快速找到你想要的变量。

比如你想找所有和价格相关的变量:

lookfor price

Stata会列出所有名称或标签中包含“price”的变量,不管它具体叫什么名字,比如可能是price、price78、price_adj等。

结合使用:一个完整的查看流程

在实际工作中,查看数据通常是一个系统性的过程,不是只用一两个命令。下面是一个推荐的查看流程:

先用sysuse或use导入数据。

然后用describe快速了解数据整体结构:有多少变量、多少个观测、变量名都是什么。

接着用summarize对数值型变量做描述统计,看均值、标准差是否合理,有没有异常的范围。

再用codebook或tabulate查看分类变量的分布,确认每个类别的频数是否合理。

然后用misstable summarize检查缺失值情况。

最后用browse或list随机查看一些具体记录,对数据有直观感受。

如果发现异常值或缺失值,再针对性地用条件browse或list深入检查。

一个综合例子

让我们用auto数据演示这个流程:

* 导入数据 sysuse auto, clear * 查看整体结构 describe * 描述统计 summarize * 详细统计 summarize price mpg weight, detail * 查看分类变量 tabulate foreign tabulate rep78, missing * 检查缺失值 misstable summarize * 查看具体数据 browse make price mpg weight foreign in 1/10

这样一步步下来,你对这套数据就有了全面了解。

总结

Stata查看数据的方法非常丰富,从直观的browse表格,到结构化的describe,到统计性的summarize,再到针对分类变量的tabulate和codebook,每一种方法都有自己的适用场景。

对于初学者来说,不需要一次记住所有命令。可以先掌握browse、describe、summarize这三个最常用的,然后在实际使用中遇到具体问题,再去查找tabulate、codebook、misstable等其他命令的用法。

关键是养成查看数据的习惯。拿到任何新数据,先花几分钟用这些命令摸清底细,后面做分析时心里才有数。

关键词:Stata查看数据,数据浏览,describe,summarize,list,数据检查

Copyright @ 国际会议云 2026 版权所有 蜀ICP备2022018807号-3 网站地图