一种分层式表格的自动读取方法

文档序号:9432575阅读:207来源:国知局
一种分层式表格的自动读取方法
【技术领域】
[0001]本发明属于信息技术领域,具体涉及一种分层式表格的自动读取的方法。
【背景技术】
[0002]分层式表格因其直观的图表形式适合人工阅读和查找而被广泛应用于各个领域,比如医学领域风险评估等等。但是在将这些表格模型应用于专家系统并需要计算机自动执行时,这种形式给计算机存储和自动读取带来了很大的困难。
[0003]图1是个典型的分层式表格,它表示十年内心血管事件发生概率依赖于年龄、性另IJ、吸烟、血压等指标的关系模型。给定一组查询指标(性别、性别、吸烟情况、年龄、血压、胆固醇),在表中可以很容易定位到一个单元格,根据该单元格的颜色可以知道这组查询指标对应的风险水平。分层式表格的抽象结构如图2所示。
[0004]以上是人工的做法,当专家系统需要整个这种表格时,必须要让计算机根据所需指标自动查询这类表格,然后返回结果,而目前并没有现成的方法实现这个功能。

【发明内容】

[0005]本发明所要解决的技术问题是针对上述的问题,提供一种分层式表格的自动读取方法,能够以高效的读取方法来实现计算机根据提供的指标自动查询表格的功能,通过顺序存储单元格数据和指标的迭代次数以及指标之间的包含关系,然后逐步分级计算出目标单元格的位置,获取所需的值,以最小的时间和空间复杂度完美解决了【背景技术】中的问题。
[0006]本发明解决技术问题所采用的技术方案是:
一种分层式表格的自动读取方法,其特征在于:所述自动读取方法包括如下步骤:
(I)提取分层式表格横轴方向上的不同跨度的指标,并根据范围的大小从大到小排序存储到文本文档中,同时存储指标的取值范围和权重这里取值范围需要根据指标的特点通过自定义函数计算出来,而自定义函数的原则是函数必须是线性的而且初始取值对应的结果必须是零。指标的权重是指标的一个取值横跨的单元格的格数。
[0007](2)提取分层式表格纵轴方向上的不同跨度的指标,并根据范围的大小从大到小排序存储到文本文档中,同时存储指标的取值范围和权重。取值范围和权重的定义同(I)。
[0008](3)顺序存储每个单元格的数值到文本文档中;
(4)接收查询指标,根据存储的不同指标和文本文档中的表格数据找到需要的结果。
[0009]在采用上述技术方案的同时,本发明还可以组合采用以下进一步的技术方案: 所述的步骤(4)中对表格数据查找的具体过程如下:
1.1:接收一组查询指标(包括横轴上和纵轴上),并把查询指标转换成数值形式。
[0010]1.2:按照指标存储的顺序,风别把指标的每个数值与对应的权重相乘,结果再相加,计算出目标单元格的横坐标和纵坐标的位置。
[0011]1.3:根据横坐标和纵坐标的值直接获取目标单元格的数值(如果取到的是键值,则转换成原始值)并返回这个结果。
[0012]本发明的有益技术效果在于:1、适用范围广,分层式表格广泛存在于各个领域,在各个领域需要建立计算机专家系统时都会用到。2、解决了分层式表格向计算机系统可执行的形态转换的问题。3、计算机存储空间占用少,几乎不占用除了表格原始数据外的额外空间。4、计算机执行效率高,运行时间只有表格长度的对数大小。
【附图说明】
[0013]图1为心血管事件发生率评估模型。
[0014]图2为分层式表格的抽象结构。
[0015]图3为横轴离散值与原始值的函数关系。
[0016]图4为纵轴离散值与原始值的函数关系。
[0017]图5为自定义键值与原始值之间的关系。
[0018]图6为键值文档的部分内容。
【具体实施方式】
[0019]为了更为具体地描述本发明,下面结合图1这个具体案例对本发明的技术方案进行详细说明。
[0020](I)这个表在横轴上有三个指标,范围由大到小分别是:性别(男性、女性)、吸烟情况(不吸烟者、吸烟者)、胆固醇(4、5、6、7、8)。由于最后表格的位置是离散分布的,所以必须根据每个指标值域的大小建立离散值与原始值的函数关系。
[0021]如图3所示:在建立函数关系时,要求函数是线性的,并且初始值对应的离散值必须为零。每个指标包含的单元格数分别是(10、5、1),所以横坐标计算公式是10*性别离散值+5*吸烟情况离散值+1*胆固醇离散值。
[0022](2)在纵轴上有两个指标,范围由大到小分别是:年龄(40、50、60、70)、收缩压(120、140、160、180),根据值域大小建立离散值与原始值的函数关系。
[0023]如图4所示:每个指标包含的单元格数分别是(4、1),所以横坐标计算公式是4*年龄离散值+1*收缩压离散值。
[0024](3)顺序存储所有的单元格,因为这个实例中是以颜色表示,需要根据表头的对应关系转换成概率,由于原始值是几个固定的概率范围,为了存储方便,需要自定义键值来存储,键值与原始值的对应关系如图5所示:依次存储对应的键值到文本文档中,部分结果如图6所示。
[0025](4)接收一组查询指标:横轴(性别、吸烟情况、胆固醇)对应值是(不吸烟、男性、5.5),按照步骤(I)的函数转换得到(0、0、1);计算出横坐标的值0*10+0*5+1*1=1 ;纵轴(年龄、收缩压)对应值是(64,144),按照步骤(2)的函数转换得到(2、1);计算出纵坐标的值 2*4+1*1=9 ;
得到目标单元格的位置(1,9),查找键值表可以得到对应的键值是1,如图6中圈中的值。
[0026]因为步骤(4)中获取的值是键值,所以要根据图5的函数转换为原始值,最后返回结果:10%〈=概率X〈20%。
【主权项】
1.一种分层式表格的自动读取方法,其特征在于:所述自动读取方法包括如下步骤: (1)提取分层式表格横轴方向上不同跨度的指标,并根据范围的大小从大到小排序存储到文本文档中,同时存储指标的取值范围和权重;(2)提取分层式表格纵轴方向上的不同跨度的指标,并根据范围的大小从大到小排序存储到文本文档中,同时存储指标的取值范围和权重,取值范围和权重的定义同步骤(I); (3)顺序存储每个单元格的数值到文本文档中; (4)接收查询指标,根据存储的不同指标和文本文档中的表格数据找到需要的结果。2.根据权利要求1所述的一种分层式表格的自动读取方法,其特征在于:在所述步骤(3)中,如果不能直接得到一个数值,如果不能直接得到一个数值,则先根据已知的特性找到对应的数值,再把得到的数值存入文本文档中。3.根据权利要求1所述的一种分层式表格的自动读取方法,其特征在于:如果不能直接得到一个数值,则将自定义键值存入文本文档中。4.根据权利要求1所述的一种分层式表格的自动读取方法,其特征在于:所述的步骤(4)中的具体过程如下: . 1.1接收一组查询指标(包括横轴上和纵轴上),并把查询指标转换成数值形式。 .1.2按照指标存储的顺序,分别把指标的每个数值与对应的权重相乘,结果再相加,计算出目标单元格的横坐标和纵坐标的位置。 .1.3根据横坐标和纵坐标的值直接获取目标单元格的数值(如果取到的是键值,则转换成原始值)并返回这个结果。
【专利摘要】本发明提供一种分层式表格的自动读取方法,包括如下步骤:1提取表格横轴上的不同跨度的指标,2提取表格纵轴上的不同跨度的指标,3顺序存储每个单元格的数值;4接收查询指标,找到需要的结果。本发明适用范围广,解决了分层式表格向计算机系统可执行的形态转换的问题。计算机存储空间占用少,执行效率高,运行时间只有表格长度的对数大小。
【IPC分类】G06F17/30
【公开号】CN105183754
【申请号】CN201510423684
【发明人】李莹, 黄杨, 尹建伟, 吴健, 邓水光, 吴朝晖
【申请人】浙江大学
【公开日】2015年12月23日
【申请日】2015年7月17日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1