|
您的位置:首页
- 统计信息化 - 正文
规模以下工业抽样调查
数据的特点及用FoxPro语言开发加快
录入程序设计的一些技巧
本文通过对规模以下工业抽样调查数据的特点进行研究,提出一些简单易行的数据录入方法与程序设计技巧,这些当然也可用于全面普查,对目前正在进行的第二次基本单位普查中的个体工商户数据处理(即6O1-3表)和基本单位名录库的建立也有一定参考作用。
一、问题的提出
为适应新时期社会主义市场经济发展的需要和满足国民经济核算的基本需要,我国正进行统计方法和制度改革。就工业统计而言,为加快工业统计调查方法改革的进程,全面、准确、客观地反映年产品销售收入500万元以下非国有工业企业和个体工业(以下简称规模以下工业)生产经营和总量情况,国家统计局提出用两年时间实现全面调查向抽样调查过渡。规模以下工业企业具有数量多、规模小、变动频繁等特点,在建立抽样框中和以后对抽样数据进行录入的过程中,都要面临相当繁重的数据录入问题。若按一般做法,对每一条记录都一个字一个字地录入,则必须花费大量的人力能否有一些加快数据录入的窍门呢?回答是肯定的,本文就想告诉您一些小小的技巧,使您能提高录人效率。
我们钟山县自1997年以来一直是广西壮族自治区规模以下工业抽样调查的样本县。目前广西使用的数据处理软件是广西区企业调查队用Fox-Pro语言开发的。我们在实际数据录入的过程中对数据录入过程进行了重新设计,这样可以大大提高录入的速度,大约提高录入速度70%。而其他模块如审核、推算等模块则均使用广西区企业调查队产业调查处下发软件。这样做既加快了录入速度,又保证上报时符合区企调队的要求。
FoxPro具有易学、易用、易维护的优点,用FoxPro来开发应用软件效率高、成本低、投资小、见效快。1998年Microsoft公司推出的Visual
FoxPro 6.0中文版,比较适合中国中小型数据库市场,对于记录数小于1000 000条的数据库,Visual-FoxPro6.0中文版无疑是最优秀的选择之一。因此本文所说的数据录入技巧主要是针对FoxPro系列语言而言的,这些方法已在FoxPro2.5b以上环境多次成功运用。
二、规模以下工业抽样调查数据的特点
在谈数据录入技巧前让我们光研究一下规模以下工业抽样调查数据的特点吧。规模下工业抽样调查分为整群抽样和目录抽样。下面分别对这两种抽样数据的特点进行研究。
(一)整群抽样数据的特点
整群抽样是将总体各单位划分成若干群,然后以群为单位从其中随机抽取一些群,对中选群的所有单位进行全面调查的抽样组织方式。
下面用钟山县的数据,以《整群抽样调查个体经营工业单位基层表》(N204表)(2000年l-9月)为例,分析整群抽样调查数据的特点。钟山县现有17个乡镇,141个村委会、4个居委会,本次由广西区企调队按整群抽样的方法抽取其中11个乡镇、22个村委会(居委会)的全部个体工业企业,共计561个。为了具有说服力从N204表相应的数据库N204.DBF中选取部分记录。选取方法:完全按照原上报库的顺序,对同一村委会连续选取相连的若干记录限于篇幅,已连续删除不同村委会间的一些记录。详见下表:
表一 整群抽样调查个体工业单位基层表(N 204表)
2001年 1 - 9 月对应数据库 N 204 .DBF (局部)
| Record # |
DZX |
DZY |
DZC |
DM |
MC |
YYSR |
| 01 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
谭广文石灰厂 |
130.00 |
| 02 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
谭永笔石灰厂 |
130.00 |
| 03 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
谭金荣石灰厂 |
100.00 |
| 04 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
徐炳权水泥砖厂 |
100.00 |
| 05 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
李安寿水泥砖厂 |
160.00 |
| 06 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
钟富华水泥砖厂 |
60.00 |
| 07 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
钟大三花窗厂 |
90.00 |
| 08 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
卢永花花窗厂 |
87.00 |
| 09 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
宋敬标碾米厂 |
3.50 |
| 10 |
钟山县 |
城厢镇 |
潮滩村委会 |
45242710153 |
徐炳芳碾米厂 |
3.00 |
| 11 |
钟山县 |
城厢镇 |
乌洞村委会 |
45242710158 |
潘增沛碾米厂 |
1.80 |
| 12 |
钟山县 |
城厢镇 |
乌洞村委会 |
45242710158 |
董庆财碾米厂 |
2.00 |
| 13 |
钟山县 |
城厢镇 |
乌洞村委会 |
45242710158 |
莫学灯碾米厂 |
1.60 |
| 14 |
钟山县 |
城厢镇 |
乌洞村委会 |
45242710158 |
卢成瑞碾米厂 |
4.00 |
| 15 |
钟山县 |
城厢镇 |
乌洞村委会 |
45242710158 |
邹北美碾米厂 |
2.00 |
| 16 |
钟山县 |
羊头镇 |
中红村委会 |
45242710255 |
虾公须岑寅德碾米厂 |
8.00 |
| 17 |
钟山县 |
羊头镇 |
中红村委会 |
45242710255 |
虾公须岑寅德碾米厂 |
8.00 |
| 18 |
钟山县 |
羊头镇 |
中红村委会 |
45242710255 |
柘木毛庆金碾米厂 |
10.00 |
| 19 |
钟山县 |
羊头镇 |
中红村委会 |
45242710255 |
红村廖旺金榨油厂 |
10.00 |
| 20 |
钟山县 |
羊头镇 |
中红村委会 |
45242710255 |
红村廖举任榨油厂 |
10.00 |
|
我们从数据录入的角度对这些数据的特点进行研究。为了便于分析我们把上面相邻记录的关系分为三种类型:
1、同一个村委会的相邻两条记录
对同一个村委会相邻两条记录来说,它们之间内容完全相同的字段最多(共有DZX、DZY、DZC、DM四个字段),就是内容不完全相同的字段(如MC和YYSR),也有一些相似的内容,较典型的例子如Recordl6与Recordl7,相同的内容最多,相同内容最少的例子如Recordl8与
Recordl9,仍有四个字段内容完全相同。并且相互间有这种关系的记录在数量上占大多数,本例中占全部记录的96.08%以上。
2、同一乡镇不同一个村委会的相邻两条记录
对同一乡镇不同一个村委相邻两条记录来说,它们内容完全相同的字段有两个(即DZX和DZY),井里其他字段也有部分内容相同(如DM和MC),这方面例子有如:Record10和Record11。但相互间有这种关系的记录数量很少,本例中只有11条,约占全部记录的2%。
3、不同乡镇间的两条记录
不同乡镇间的两条相邻记录,具有完全相同内容的字段较少,只有DZX一个,请看Record15和Record16。但相互间有这种关系的记录数量也很少,本例中只有11条.约占全部记录的2%。
根据以上分析,可进一步归纳出整群抽样调查数据的特点:
整群抽样调查数据的特点为:在整群抽样调查中,绝大多数相邻两条记录间有若干字段的内容完全相同,其余的字段也有许多内容相同(或相似)。
(二)对造成整群抽样数据特点的原因分析
作者认为,整群抽样调查数据间具有这些特点,并不是偶然的而是具有内在的、必然的原因。这是由于数据填报时,把同群(本例中为同村)的单位填写在同一张表或连续的几张表中,(如N204表),加上收集报表时按同群(本例中为同村)及同乡镇的报表归在一起,这样录入时,前后的两条记录便有若干完全相同字段了,就是不完全相同的字段也有许多相似的内容。如果建立抽样框时到工商所等有关部门收集资料,并且这些资料是已经分类过了的,则更加使得不完全相同的字段中,相似的内容增多,如前面所说的Record16与Record17,可能就是这种原因造成的。还有一种可能,就是建立抽样框时,为了便于记忆,做到不重不漏,也需要对同一群的企业进行一些分类工作。这也说明,若事先经过分类,则可以人为地增加相邻两条记录间相同的内容。总之,由于报表的填报方法和收集方式方法的原因,造成整群抽样数据的上述特点。
(三)目录抽样数据的特点
由于目录抽样报表的收集方式方法与整群抽样相同,其报表的填报方法也有类似之处,故其数据与整群抽样也有类似的特点。但目录抽样的样本分布在较多的村委会,故从数量上来说,其具有完全相同字段的相邻记录会少一些。不过仍可以有这样的结论:目录抽样数据的特点:大多数相邻两条记录间有若干字段的内容完全相同,其余的字段也有许多内容相同(或相似)。
三.加快数据录入的程序设计技巧
(一)一般思路:可以考虑建一个内存变量数组,把最后一条记录的内容,存到该数组中,然后在数据库后面增加一条空记录,再用内存变量数组的内容来替代空记录的内容,并用浏览功能把与本记录不同的那部分修改为要录入的内容,改完最后的字段后,按回车键时,刚录完的这条记录成了最后的记录,又用它的内容去更领内存变量数组的内容,再在数据库后面增加一条空记录,然后用内存变量数组的内容来替代史记录的内容,并用测览功能把与本记录不同的那部分修改为要录入的内容......如此重复前面的步骤,直到录完全部记录或中途要退出为止。这种方法可以用于各种程序设计语言。
(二)对于FoxPro系到语言来说,有更为简单的办法:
FoxPro系列语言有一条命令:“SET CARRYON/OFF”,其功能是“把最后一个记录的内容写/不写到被追加的记录中”,其缺省值为OFF,即不把最后一条记录的内容写到被追加的记录中。只要在APPEND命令(其作用为在当前数据库文件尾部增加记录)前,加一条命令“SET
CARRY ON”,则可以把最后一条记录的内容复制到追加的记录中,然后把与本记录不同的那部分修改为要录入的内容。修改时可以用按TAB键或者按回车键跳过内容完全相同的字段,用编辑键把光标逐一定位于要修改的内容处,然后进行修改就可以了。若在修改时灵活运用Insert键(该键为插入/改写开关键,用它可以实现插入/改写的转换。),则修改(录入)速度就更快了。
另外,对于全县都相同的那些字段,如本例中的DZX字段,在录入时也可以先不管,接回车键跳过,待到把所有记录录完后,再用REPLACE命令一次性把该宇段的内容填写完成。如本例中可以用命令:
REPLACE DZX WITH “钟山县” ALL
这样,便把DZX字段的内容一次性全部填写为“钟山县”。这样做的好处是:可以加快录入速度、并减少出错的机会、也利于按字段分类汇总。
(作者:何善群 单位:广西壮族自治区钟山县统计局 邮政编码:542600)
摘自《统计信息化》2001年第五期
|