Stata 将字符串数字表达式转换为数字
我有一个带有字符串表达式的数据集,如{“1/2”,“0.5”}。如何将这些字符串转换为实际数字?我知道有destring,但它只将“数字字符串”转换为数字;“数字表达式”返回为缺失。问得好。请注意,Stata 将字符串数字表达式转换为数字,stata,Stata,我有一个带有字符串表达式的数据集,如{“1/2”,“0.5”}。如何将这些字符串转换为实际数字?我知道有destring,但它只将“数字字符串”转换为数字;“数字表达式”返回为缺失。问得好。请注意,real()在这里没有帮助。下面是一个粗略的解决方案: clear input str6 myproblem "1 / 2" "0.5" "ln(3)" end gen onesolution = . quietly forval i = 1/`=_N' { replace one
real()
在这里没有帮助。下面是一个粗略的解决方案:
clear
input str6 myproblem
"1 / 2"
"0.5"
"ln(3)"
end
gen onesolution = .
quietly forval i = 1/`=_N' {
replace onesolution = `= myproblem[`i']' in `i'
}
list
+---------------------+
| myprob~m onesol~n |
|---------------------|
1. | 1 / 2 .5 |
2. | 0.5 .5 |
3. | ln(3) 1.098612 |
+---------------------+
这是可行的,但我记得几年前在某个地方读到(大约第11版),在Stata中一个一个地重复观察是很慢的。在最新版本中仍然是这样吗?这就是我称之为粗糙的原因之一。循环观察始终是最后的手段。