代码拉取完成,页面将自动刷新
同步操作将从 连享会/nwcommands 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
*! Date : 24aug2014
*! Version : 1.0
*! Author : Thomas Grund, Linkping University
*! Email : contact@nwcommands.org
capture program drop nwcontext
program nwcontext
version 9
syntax [anything(name=netname)], ATTRibute(string) [mat(string) stat(string) mode(string) GENerate(string) noweight]
_nwsyntax `netname', max(1)
if "`stat'" == "" {
local stat = "mean"
}
_opts_oneof "mean max min sum sd meanego maxego minego sumego sdego" "stat" "`stat'" 6810
if "`mode'" == "" {
local mode = "outgoing"
}
_opts_oneof "incoming outgoing both" "mode" "`mode'" 6810
if "`generate'" == "" {
local generate _context_`attribute'
}
capture drop `generate'
if ("`stat'" == "") {
local stat = "mean"
}
nwtomata `netname', mat(contextNet)
mata: attr = J(`nodes', 1, 0)
if `nodes' >= _N {
local validCase = _N
mata: attr[(1::`validCase')] = st_data((1,`validCase'), "`attribute'")
}
else {
mata: attr[(1::`nodes')] = st_data((1,`nodes'), "`attribute'")
}
if ("`mode'" == "incoming") {
mata: contextNet = contextNet'
}
if ("`mode'" == "both") {
mata: contextNet = contextNet' + contextNet
}
if ("`weight'" == "noweight"){
mata: contextNet = contextNet :/ contextNet
mata: _editmissing(contextNet, 0)
}
if ("`stat'" == "mean"){
mata: netVal = rowsum(contextNet)
mata: context = (contextNet * attr) :/ netVal
mata: mata drop netVal
}
if ("`stat'" == "meanego"){
mata: _diag(contextNet, 1)
mata: netVal = rowsum(contextNet)
mata: context = (contextNet * attr) :/ netVal
mata: mata drop netVal
}
if ("`stat'" == "sd"){
mata: netVal = rowsum(contextNet)
mata: avgContext = (contextNet * attr) :/ netVal
mata: _editvalue(contextNet,0,.)
mata: diffContext = (contextNet :* attr') :- avgContext
mata: context = sqrt(rowsum(diffContext :* diffContext):/rowsum(contextNet))
mata: mata drop netVal diffContext avgContext
}
if ("`stat'" == "sdego"){
mata: _diag(contextNet, 1)
mata: netVal = rowsum(contextNet)
mata: avgContext = (contextNet * attr) :/ netVal
mata: _editvalue(contextNet,0,.)
mata: diffContext = (contextNet :* attr') :- avgContext
mata: context = sqrt(rowsum(diffContext :* diffContext):/rowsum(contextNet))
mata: mata drop netVal diffContext avgContext
}
if ("`stat'" == "max"){
mata: _editvalue(contextNet,0,.)
mata: context = rowmax(contextNet :* attr')
}
if ("`stat'" == "maxego"){
mata: _diag(contextNet, 1)4
mata: _editvalue(contextNet,0,.)
mata: context = rowmax(contextNet :* attr')
}
if ("`stat'" == "min"){
mata: _editvalue(contextNet,0,.)
mata: context = rowmin(contextNet :* attr')
}
if ("`stat'" == "minego"){
mata: _diag(contextNet, 1)
mata: _editvalue(contextNet,0,.)
mata: context = rowmin(contextNet :* attr')
}
if ("`stat'" == "sum"){
mata: context = (contextNet * attr)
}
if ("`stat'" == "sumego"){
mata: _diag(contextNet, 1)
mata: context = (contextNet * attr)
}
if "`mat'" != "" {
mata: `mat' = context
}
else {
nwtostata, mat(context) gen(`generate')
}
mata: mata drop context contextNet attr
end
*! v1.5.0 __ 17 Sep 2015 __ 13:09:53
*! v1.5.1 __ 17 Sep 2015 __ 14:54:23
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。