概念与概念的统计数据
<p><strong>概念对象之间计算思路</strong>
<strong>参数 </strong>
概念名 是否计算下位概念 对象数量
<strong>步骤</strong>
以下思路 是不计算下位概念,</p>
<ol>
<li>全局变量 related_stregth = 0 related_number = 0 compression_rate = 0 </li>
<li>使用类Concpet.randomSampleObjects() 提取指定数量的对象obj_kyes</li>
<li>使用RelationManager.getRelationSummaryTable 提取指定概念相关联的概念列表concept_li</li>
<li>遍历concept_li 局部变量 res_li = [] 统计主键和目标概念的关联的主键列表 r_num = 0 统计主键有多少个和目标概念有关联</li>
<li>遍历obj_kyes</li>
<li>使用使用RelationManager.getRelatedObjectByConcept() 方法计算指定概念的主键和目标概念关联数据
如果有关联数据, 继续下一步</li>
<li>计算关联强度,关联数量和压缩比,
关联强度=r_num/obj_kyes的数量
关联的数量=len(res_li)/r_num
压缩比=len(set(res_li)) /r_num</li>
</ol>
<p>如果是下位概念会新增以下步骤</p>
<ol>
<li>获取概念的下位概念,平均取每个概念的对象数量</li>
</ol>
<p>数据存储
使用有序列表存放数据</p>
<pre><code>StatisticalModel_Concept_Hash_概念名:{'概念名1':{'related_stregth':0.98,
'related_number':0.98,
'compression_rate:0.98}
}</code></pre>
<p>提取数据</p>
<pre><code>Class ConceptStatistical():
def getConpetStatiscal('第一概念','第二概念'):
pass
def getObjectStatistical('概念名'):
pass</code></pre>
<p><strong>同一概念的对象与对象之间计算思路</strong>
<strong>参数 </strong>
概念名 是否计算下位概念 对象数量</p>
<p><strong>步骤</strong></p>
<ol>
<li>全局变量 related_stregth = 0 related_number = 0 compression_rate = 0 </li>
<li>使用类Concpet.randomSampleObjects() 提取指定数量的对象obj_kyes</li>
<li>遍历obj_keys keys_li=[] 存储perotype的键 has_keys_num=0 统计附属信息有键的对象数量</li>
<li>获取对象Object().getProperty(),去除掉peroperty中只有键,而值是空值的键 把键写入keys_li,键的数量放入到has_keys_num</li>
<li>计算关联强度,关联数量和压缩比,
关联强度=r_num/obj_kyes的数量
关联的数量=len(res_li)/r_num
压缩比=len(set(res_li)) /r_num</li>
</ol>
<p><strong>如果需要计算下位概念会新增以下步骤</strong></p>
<ol>
<li>获取概念的下位概念,平均取每个概念的对象数量</li>
</ol>
<p><strong>数据存储</strong></p>
<pre><code>StatisticalModel_Object_Hash:{'概念名1':{'related_stregth':0.98,
'related_number':0.98,
'compression_rate:0.98}
}</code></pre>
<p><a href="https://www.showdoc.cc/web/#/81306580462226?page_id=865043147391367">https://www.showdoc.cc/web/#/81306580462226?page_id=865043147391367</a></p>