其他
Stata模拟构建朋友圈
本文作者:王碧琪
文字编辑:张馨月
技术总编:李朋冲
(一)构造每个人选择的前三个朋友
clear
set obs 100
gen name = "A"+string(_n)
postfile friends str5 name str5 f1 str5 f2 str5 f3 using friends.dta, replace
drop if name == "A1"
sample 3, count
post friends ("A1") (name[1]) (name[2]) (name[3])
postclose friends
use friends, clear
br
postfile friends str5 name str5 f1 str5 f2 str5 f3 using friends.dta, replace
forvalues i = 1/100{
preserve
drop if name == "A`i'"
sample 3, count
post friends ("A`i'") (name[1]) (name[2]) (name[3])
restore
}
postclose friends
use friends, clear
br
(二)查看哪个同学的人缘最好
use friends.dta, clear
gen f1_d = (f1 == "A1")
gen f2_d = (f2 == "A1")
gen f3_d = (f3 == "A1")
gen x = f1_d + f2_d + f3_d
gen y = sum(x)
clear all
postfile pop_f str5 name number using pop_f.dta, replace
forvalues i = 1/100{
use friends.dta, clear
gen f1_d = (f1 == "A`i'")
gen f2_d = (f2 == "A`i'")
gen f3_d = (f3 == "A`i'")
gen x = f1_d + f2_d + f3_d //此处默认f1、f2、f3的重要程度相同,权重都为1
gen y = sum(x)
post pop_f ("A`i'") (y[_N])
}
postclose pop_f
use pop_f, clear
br
use pop_f, clear
sum number
forvalues n = `=r(min)'/`=r(max)'{
di `n'
count if number == `n'
}
自科基金项目信息爬取
rename group批量修改变量名
小命令,大不同——insobs插入新值
新的一年,效率满满~(上)
关于我们
微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。