发布网友 发布时间:2022-05-07 15:07
共1个回答
热心网友 时间:2022-06-30 10:48
这个用R语言会方便很多吧?stata应该也很方便,不过stata不太了解~
花了半个小时帮你搞下吧。你先安装R语言,然后把下面代码输入进去就可以了(当然文件名啊,文件路径啊要自己修改下啊)
install.packages("dplyr") #安装dplyr包
library(ddplyr) #载入dplyr包
dat<-read.table(".txt",header=T) #读取你上面的数据,我直接保存到.txt中
dat<-dat %>% group_by(A) %>% summarise(count=n()) %>% merge(dat) %>% filter(count>=2) %>% select(-count)#这个是被断行的,实现“根据A列进行汇总统计出各值所对应的个数,对于个数不小于2的进行保留,小于2的忽略”
result<-by(dat,factor(dat$A),function(x)coef(lm(B~C,data=x))[2],simplify=F)#这个是回归的,实现“对各保留类值所对应的B列和C列值进行回归分析,求取回归系数”
result<-data.frame(A=names(result),Coef=unlist(result))#最后这两行是实现“得到的结果是A列的值和其所对应的回归系数”
write.table(result,"回归结果.csv",row.names=F,sep=",")
结果如下: