Stata:获取行条件的聚合

Stata:获取行条件的聚合,stata,Stata,我如何计算以下MWE中每个独特的resulthistory实例的观察总数 clear input str16 username betnumber stake probability subsequentwinnings player1 1 10 0.5 -10 player2 1 10 0.5 10 player3 1 10 0.5 -10 player4 1 10 0.5 -10 player2 2 20 0.5 -20 player3 2 20 0.5 -20 end generat

我如何计算以下MWE中每个独特的resulthistory实例的观察总数

clear
input str16 username betnumber stake probability subsequentwinnings
player1 1 10 0.5 -10
player2 1 10 0.5  10
player3 1 10 0.5 -10
player4 1 10 0.5 -10

player2 2 20 0.5 -20
player3 2 20 0.5 -20
end

generate result = "L"
replace result = "W" if (subsequentwinnings >0)

bysort username (betnumber): gen resulthistory = result[1] 
by username : replace resulthistory = resulthistory[_n-1] + result if _n > 1 

我是否需要发出保留/恢复命令,并通过它们之间的ResultyStory进行聚合?

让我们在提出问题时回答您的问题。唯一的事件只发生一次;这就是这个词的意思。因此,每个唯一值只出现一次,您不需要程序来计算1作为答案。您可能想知道哪些结果历史记录只出现一次,并且这些结果历史记录可以通过指示符变量识别

bysort resultshistory : gen unique = _N == 1 
现在让我们假设你说的不是真心话。我在早些时候的回答中建议阅读

根据不同的观察结果以及为什么“独特”一词具有误导性:

由于这是对整个问题的回顾,以及将要使用的各种命令的详细信息,我将到此为止


您的各种问题都擅长在提问之前显示您拥有的代码,但您并不总是显示试图回答您的问题的代码。您也没有明确表示您正在查看文档,包括StataCorp常见问题解答和Stata杂志中的可访问材料,因此,尽管我试图帮助您,但我也将投票否决您,认为您没有显示尝试的代码解决方案,也没有显示研究成果

我不清楚你们想达到什么目的,但为了这样的练习,保留和恢复声音对我来说是错误的。这些命令使您失去了对这些命令之间创建的数据的所有更改,因此在使用这些块时很难聚合结果。争夺unique的战斗确实早已失败。适当注意到的建议。我将相应地编辑未来的问题。