Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有什么办法可以越过“障碍”;太多的价值观”;使用表格时Stata出错?_Stata - Fatal编程技术网

有没有什么办法可以越过“障碍”;太多的价值观”;使用表格时Stata出错?

有没有什么办法可以越过“障碍”;太多的价值观”;使用表格时Stata出错?,stata,Stata,我试图在Stata中根据另一个变量的类别生成一个变量的频率 对于我感兴趣的类别,另一个分类变量有大约790000个观察值 Stata对单向表和双向表分别有12000行和1200行的限制,这使得这不可能实现 每次运行选项卡x时,如果y==我都会得到以下错误: too many values r(134); 我安装了bigtab软件包,虽然它给了我表格,但它不能与by一起使用,也不能运行统计测试 这有什么办法吗 当SAS甚至SPSS可以毫无困难地运行完全相同的操作时,Stata应该有这样的任意限制

我试图在Stata中根据另一个变量的类别生成一个变量的频率

对于我感兴趣的类别,另一个分类变量有大约790000个观察值

Stata对单向表和双向表分别有12000行和1200行的限制,这使得这不可能实现

每次运行
选项卡x时,如果y==
我都会得到以下错误:

too many values
r(134);
我安装了
bigtab
软件包,虽然它给了我表格,但它不能与
by
一起使用,也不能运行统计测试

这有什么办法吗


当SAS甚至SPSS可以毫无困难地运行完全相同的操作时,Stata应该有这样的任意限制似乎很愚蠢。

对于一些人来说,人们想要超过12000行的表可能看起来很愚蠢,或者至少令人困惑,因为必须有更好的方法来显示结果或回答心中的问题

也就是说,
表格的限制是硬连接的。但你只需要考虑复制你想展示的东西。所以,对于单向频率

. bysort rowvar : gen freq = _N
. by rowvar : gen tag = _n == 1 
. gsort -freq rowvar 
. list rowvar freq if tag, noobs   
对于双向频率

. bysort rowvar colvar : gen freq = _N
. by rowvar colvar : gen tag = _n == 1 
. gsort -freq rowvar colvar
. list rowvar freq if tag, noobs 
类似的方法,有更多的铃铛和哨子,在
(SSC)中编码。在许多方面,一种更简单的方法是
折叠
收缩
数据集,然后
列出它

要在此处标记总体战略:

  • 产生你想要的新变量

  • 如果有多个观察,则从每组中仅选择一个观察

  • 列表
    ,而不是
    制表

  • 更新

    OP问道

    . bysort rowvar : gen freq = _N 
    
    OP:这将为my
    rowvar

    Me:否。
    freq
    变量是
    rowvar
    的每个不同值的观察计数

    . by rowvar : gen tag = _n == 1 
    
    OP:这将为
    rowvar
    中每个唯一观测值的第一个计数生成
    标记
    变量

    我:对,只要你说“独特”,而不是“独特”。唯一值仅出现一次

    . gsort -freq rowvar 
    
    OP:这将按降序对
    freq
    rowvar
    进行排序

    Me:它在常量
    freq
    块内按降序排序
    freq
    ,按升序排序
    rowvar

     . list rowvar freq if tag, noobs 
    
    OP:if
    在这里做什么


    我:那是一个练习

    使用命令
    bigtab
    。(您必须先安装软件包:运行
    ssc install bigtab
    )要获得帮助,请键入
    h bigtab

    您好,谢谢您的回复。(很抱歉,我没有意识到按enter键会提交评论)我在Stata几乎是一个新手,所以请耐心听我讲这段代码,它为我的rowvar中每个值的最后一个计数生成freq变量,rowvar:gen tag==1
    它为每个唯一观测值的第一个计数生成tag变量在rowvar
    gsort-freq rowvar
    中,此命令按降序对freq和rowvar进行排序
    列出rowvar freq if标记,noobs
    if在此处做什么?用户在发布问题时报告了此命令的问题。