Hello,
It seems that nss has problems with long strings, whereas noccur does not have problems with long strings. Both functions are part of "Extensions to generate" (egenmore) and count the number of occurrences of a string within another string. I am using Stata IC 13.1.
Example:
CODE:
version 13
clear
set obs 1
generate str test1 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18 br19 br20 bottling bottling " in 1
generate str test2 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18 br19 bottling bottling " in 1
egen check1_nss=nss(test1), find("bottling")
egen check2_nss=nss(test2), find("bottling")
egen check1_noccur=noccur(test1), string("bottling")
egen check2_noccur=noccur(test2), string("bottling")
tab check1_nss check1_noccur
tab check2_nss check2_noccur
OUTPUT:
. version 13
.
. clear
.
.
.
. set obs 1
obs was 0, now 1
. generate str test1 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18
> br19 br20 bottling bottling " in 1
. generate str test2 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18
> br19 bottling bottling " in 1
. egen check1_nss=nss(test1), find("bottling")
. egen check2_nss=nss(test2), find("bottling")
. egen check1_noccur=noccur(test1), string("bottling")
. egen check2_noccur=noccur(test2), string("bottling")
.
. tab check1_nss check1_noccur
| check1_noc
| cur
check1_nss | 2 | Total
-----------+-----------+----------
1 | 1 | 1
-----------+-----------+----------
Total | 1 | 1
. tab check2_nss check2_noccur
| check2_noc
| cur
check2_nss | 2 | Total
-----------+-----------+----------
2 | 1 | 1
-----------+-----------+----------
Total | 1 | 1
Regards,
Carlos Eduardo Hernandez
It seems that nss has problems with long strings, whereas noccur does not have problems with long strings. Both functions are part of "Extensions to generate" (egenmore) and count the number of occurrences of a string within another string. I am using Stata IC 13.1.
Example:
CODE:
version 13
clear
set obs 1
generate str test1 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18 br19 br20 bottling bottling " in 1
generate str test2 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18 br19 bottling bottling " in 1
egen check1_nss=nss(test1), find("bottling")
egen check2_nss=nss(test2), find("bottling")
egen check1_noccur=noccur(test1), string("bottling")
egen check2_noccur=noccur(test2), string("bottling")
tab check1_nss check1_noccur
tab check2_nss check2_noccur
OUTPUT:
. version 13
.
. clear
.
.
.
. set obs 1
obs was 0, now 1
. generate str test1 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18
> br19 br20 bottling bottling " in 1
. generate str test2 = "br01 br02 br03 br04 br05 br06 br07 br08 br09 br10 br11 br12 br13 br14 br15 br16 br17 br18
> br19 bottling bottling " in 1
. egen check1_nss=nss(test1), find("bottling")
. egen check2_nss=nss(test2), find("bottling")
. egen check1_noccur=noccur(test1), string("bottling")
. egen check2_noccur=noccur(test2), string("bottling")
.
. tab check1_nss check1_noccur
| check1_noc
| cur
check1_nss | 2 | Total
-----------+-----------+----------
1 | 1 | 1
-----------+-----------+----------
Total | 1 | 1
. tab check2_nss check2_noccur
| check2_noc
| cur
check2_nss | 2 | Total
-----------+-----------+----------
2 | 1 | 1
-----------+-----------+----------
Total | 1 | 1
Regards,
Carlos Eduardo Hernandez
Comment