1.一种基于地址的单字权重统计方法,其特征在于,所述方法包括以下步骤:
1)输入待统计的总数据表,记为T,其地址数据条数为N,表中保存着大量标准地址数据,同时创建一个Result表,每行数据存储为{w,perWordSum,perWordRow,wfItw},w字段代表该行的单字,perWordSum字段代表该单字在表T中出现的总次数,perWordRow字段代表该单字在表T中出现的总行数,wfItw字段代表该单字在表T中的权重值;
2)首先使用逐字加一法对表T进行总字数统计,总字数记为AllWordSum,过程如下:
2.1)选取的第n行数据,记为Tn,n初始值为1,通过移动数据字符下标j的方式判断是否将AllWordSum加1,j初始值为0;
2.2)若Tn下标j对应的字符非标点符号与空格符则将AllWordSum加1,并将下标j加1,移动到该行数据的下一个字符上,重复2.2)操作;
2.3)若Tn下标j已移动到该行的最后一个字符则将n加1,返回2.1)继续操作,直至n等于N,将n重置为1,j重置为0;
3)其次使用逐字加一法统计表T中每个单字的出现次数perWordSum和表T中每个单字的出现条数perWordRow,a代表在Result表对应的行下标,初始值为0,过程如下:
3.1)选取表T的第n行数据,记为Tn,逐一移动Tn字符下标j;
3.2)若该下标j对应的字符w非标点符号与空格符,且没有在Result表中出现,则在Result表新建一行,行下标a加1,Result表第a行的w设为Tn下标j对应的字符,该w与该a对应,perWordSum设为1,perWordRow设为1,返回3.1)继续操作;
3.3)若该下标j对应的字符w非标点符号与空格符,检索到w在Result第a行出现,则下标j加1,将第a行的perWordSum加1,判断该下标对应字符w对应的perWordRow是否已经加过
1;
3.3.1)若下标j对应的字符w所在行,未将perWordRow加1,则将该行的perWordRow加1,返回3.1)继续操作;
3.3.2)若下标j对应的字符w所在行,已将perWordRow加1,则返回3.1)继续操作;
3.4)若Tn下标j已移动到该行的最后一个字上,则考虑n与N的关系;
3.4.1)若n≠N则将n加1,j置0,返回3.1)继续操作;
3.4.2)若n=N则跳出3)操作;
4)通过每个单字的出现次数perWordSum与总字数AllWordSum之间对应关系,求正单字频率WF:
5)通过每个单字的出现条数perWordRow与数据总表数据条数N之间对应关系,求逆单字频率IWF:
6)通过正单字频率WF与逆单字频率IWF之间对应关系,求单字加权权重WF‑IWF:
WF‑IWF=WF×IWF;
7)将统计数据与计算结果按Result要求的单行格式存储。