Well, now you tell us. Possibly some
variant on this:
quietly {
foreach v of var v6-v146 {
levelsof `v', local(this)
local all : list all | this
}
local all : list sort all
foreach text of local all {
local count = 0
foreach v of var var6-v146 {
count if `v' == "`text'"
local count = `count' + r(N)
}
noi di as txt "`text' `count'"
}
}
Nick
[email protected]
Nikolaos A. Patsopoulos
> Nick Cox wrote:
> > Check out -tabm- from -tab_chi- on SSC.
> >
> > Alternatively, an approach from first
> > principles is to -reshape long- so
> > that this reduces to a two-way tabulation.
Nikolaos A. Patsopoulos
> >> I've got a set of variables v6-v146, each one containing
> >> string values
> >> (unique values ~4500):
> >>
> >> v6 v7 v8 v9 v10...
> >> text1 text1 text3 text45 text1...
> >> text5 text2 text1 text455 text1
> >> .....
> >>
> >> I want to count how many times each of the values appears
> in at least
> >> one of the v6-v146 in each row [observation], e.g. text1
> appears at
> >> least once in 7365obs.
> >>
> >> How can achieve this?
> I tried :
> tabm v7-v146
>
> I had to kill the process after few minutes (it's a 150MB database)
>
> Then used:
>
> tabm v7-v8 // just to see what will come up but that's what I got:
> too many values
> r(134);
>
> The unique values for each var is 4364 from a total of 25725
> observations
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/