排序所演绎的数据逻辑
数据系统中数据行进行排列组成数据表,作为“记录”的数据行都有一个主语关键字,除了具有方向感和长短外,数据行的位置是有顺序的,这与关键字的升序/降序有关,确定顺序的处理称为“排序”。
在数据界面中,将数据行按一定的顺序列举叙述,构成有顺序的数据列表,不同的排序结果,界面会产生不同的意思表达。其目的就在于把议论的焦点放在特定的场景中,不需特意说明,就可以让读者看出所述重点数据(主角)处在众多数据中的排列位置,起到了“此时无声胜有声”的作用。用排序说理,可以把论点阐述得更准确、更具体。
比如表3.2.1.1是按学号升序排序的,目的是为了用户迅速定位到某行学号的数据行,以便查询成绩,2004618231号学生会沿着“学号”列顺序,快速找到“2004618231”所在的数据行,然后横向看到成绩。读者只要看懂表的标题就立即领会阅读方法。
表3.2.1.1 按学号升序排序的学生成绩表
专业名称 | 班级 | 学号 | 成绩 |
电子商务管理 | 电商0402 | 2004618226 | 70 |
电子商务管理 | 电商0402 | 2004618231 | 80 |
电子商务管理 | 电商0402 | 2004618248 | 60 |
而表3.2.1.3是按成绩降序排序的,这种排列方式的目的不是为了查询,而是为了推算出成绩排名,比如表表3.2.1.2排在第1行的学生就表明这个学生是“状元”,而表1排在第1行的学生不能说明什么。
表表3.2.1.2 按成绩降序排序的数据行(成绩排行榜)
专业名称 | 班级 | 学号 | 成绩 |
电子商务管理 | 电商0402 | 2004618231 | 80 |
电子商务管理 | 电商0402 | 2004618226 | 70 |
电子商务管理 | 电商0402 | 2004618248 | 60 |
数据系统中数据行进行排列组成数据表。界面构成中数据行描述数据记录之间的顺序关系,重点所表现由位置引发的对最大值、最小值、近似值的数据行记录的联想。作为“记录”的数据行都有一个主语关键字,排序就是对关键字进行升序或降序排列。如果按升序排序,则最小值排第一行,最大值排最后,最近的两行是数据表中关键字所谓值最近似的两行。因此数据行除了具有“线”的方向感和长短外,平行线的位置是有含义的,这与关键字的升序/降序有关,确定顺序的处理称为“排序”。
2.2.1 排序的方法
一、选取关键字
排序要选择能突出文意的的字段为排序关键字,因此必须从内容的需要出发,不能随意地排序。比如:学生成绩按学号为关键字排序时有利于学生找到所在位置,而按成绩排序是为了看到排名。
二、确定关键字的顺序
排序关键字可以是多项,但是关键字的顺序要留有弦外之音,启发读者深思。按“专业+性别”排序与按“性别+专业”排序,所阐述的结论重点有所不同。
涉及到数据多、业务量大、可比性强而且能够进行趋势变动分析的相关审计实务均可采用 “排序”功能进行辅助审计,以达事半功倍之效。比如:
1、显示某物品最近销售价格,按物品名、日期大小进行降序排列,而要显示业务员对某物品最近销售价格,按业务员、物品名、日期大小进行倒叙排列。
2、在审计“应收帐款”中,按金额大小、帐龄长短分类排列。可以分析其结构、性质,并抽取重点样本进行延伸审计。
3、在“业务活动费”的审计中,可按其类别、对象、经办人、金额分类排列。不仅能够摸清其全貌,从繁杂的支出中理出头绪,找出规律,分析其合理、合法性,同时也是发现案件线索的重要渠道。
4、在票据审计中,对税收发票、行政事业收费凭证、内部自制凭证等,按金额“排序”,有利于选择重点抽查的对象,能得知票据短缺情况并进行追查。
5、在货币资金审计中,按笔次、金额大小进行“排序”,找出重点、疑点进行抽查。
三、排序方向(排序的分类)
1. 升序:按照关键字的顺序,由小到大,由少到多,由低到高……去排列。
2. 降序:按照关键字的顺序,由大到小,由多到少,由高到低……去排列。
3、自定义顺序:单击“Excel选项”,在“常用”选卡里,单击“编辑自定义列表”按钮,添加自定义序列。自定义序列,在“排序选项”对话框中,选择“自定义排序次序”列表框里选择自定义的序列。
4、按笔划排序:在中国人的习惯中,常常是按照“笔划”的顺序来排列姓名的。这种排序的规则是:按姓字的划数多少排列,同划数内的姓字按起笔顺序排列(横、竖、撇、捺、折),划数和笔形都相同的字,按字形结构排列,先左右、再上下,最后整体字。如果姓字相同,则依次看名第二、三字,规则同姓字。
5、按颜色排序、按字符的数量排序
6、按“汉语拼音”顺序排序。如果排序的对象是西文字符,则按“西文字母”顺序排序。
排序非常好的表格:JuniorEnglishforChina初中一年级课本PronunciationandSpellingTables(发音和拼写表格)编排得非常的好。其中:第一张表格是按a,e,i,o,u的“名称音”编排的;第二张表格是按a,e,i,o,u的“短音”编排的;两张表格概括了含有英语的“10个元音”的“初中一年级”的单词,它们的编排符合英语的基础训练的要领。第三张表格则编排的是其他的8个元音的“初中一年级”的单词。
2.2.2 excle 排序的实现
一、一般排序
想找出价格前十名的股票,并且从第一名排到第十名,排序就可以实现。
1、高亮选择要进行排序的范围,包括列标题行在内。
2、单击【数据】菜单-【排序】,弹出“排序”对话框:
<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape style="WIDTH: 136.8pt; HEIGHT: 130.2pt" id="_x0000_i1025" alt="" type="#_x0000_t75"><imagedata o:href="http://www.newsjz.com/wxqgr/Article/UploadFiles/201101/20110105135613253.gif" src="file:///C:%5CDOCUME~1%5Csx%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.png"><span style="font-family:宋体;font-size:16px;"></span></imagedata></shape>
3、从“主要关键字”下拉列表中选择排序的主要依据,并单击右侧两个任选项中的一个,确定是按升序还是降序排列。例如:我们选择“总分”为关键字,并单击“降序”选项,Excel将会按“总分”从高到低的顺序对数据进行排列。
4、如有必要,可以设置排序的次要关键字及排序顺序。当主要关键字下出现相同数据时,将按次要关键字的设置排序。如果需要按“学历、工龄、职称”对数据进行排序,可以这样操作:选中数据表格中任意一个单元格,执行“数据→排序”命令,打开“排序”对话框,将“主要关键词、次要关键词、第三关键词”分别设置为“学历、工龄、职称”,并设置好排序方式(“升序”或“降序”).
5、单击“确定”按钮后,表格数据即按设定的排序依据进行排序。
注意:如果Excel没能够正确地进行排序,可能是因为它没有正确地获取排序区域。请检查一下你的排序区域是否选择得合理。尤其应该注意的是,排序区域中不能够包含已合并的单元格。
二、按行排序:【数据】菜单-【排序】-【选项】-“方向”-【按行排序】
三、按笔划排序
对“姓名”进行排序时,选中姓名列任意一个单元格,执行“数据→排序”命令,打开“排序”对话框,单击其中的“选项”按钮,打开“排序选项”对话框,选中其中的“笔划排序”选项,确定返回到“排序”对话框,再按下“确定”按钮即可。
四、自定义排序
当对“职称”列进行排序时,可以通过自定义序列来进行排序:
先把相应的职称序列按需要排序的顺序输入到相应的单元格区域(如N2至N18)中;执行“工具→选项”命令,打开“选项”对话框,切换到“自定义序列”标签下,在“从单元格中导入序列”右侧的方框中输入“$N$2:$N$18”(也可以用鼠标选择输入),然后单击“导入”按钮,将相应的序列导入到系统中,确定返回。
序列导入后,原来N2至N18区域中输入的数据可以删除,导入的序列在其他Excel文档中均可直接使用。
选中“职称”列任意一个单元格,执行“数据→排序”命令,打开“排序”对话框,单击其中的“选项”按钮,打开“排序选项”对话框,按“自定义排序次序”选项右侧的下拉按钮,在随后弹出的下拉列表中,选中上述“导入”的序列,确定返回到“排序”对话框,再按下“确定”按钮即可。
五、用函数进行排序
不希望打乱表格原有数据的顺序,而只需要得到一个排列名次,可以用函数来实现:
1、用RANK()函数:
假定E列为成绩,F列为名次,F2单元格公式如下:=RANK(E2,E:E)
若要升序排序,可在公式最后增加一个“非零”参数,如将上述公式改为:= RANK(E2,E:E,1)。
这种方法,分数相同时名次相同,随后的名次将空缺。例如:两个人99分,并列第2名,则第3名空缺,接下来是第4名。
2、中国式排名:
假定成绩在E列,请在F2输入公式:SUM(IF(E$2:E$1000>E2,1/COUNTIF(E$2:E$1000,E$2:E$1000)))+1
公式以Ctrl+Shift+Enter三键结束。这种方法分数相同的名次也相同,不过随后的名次不会空缺。
3、LARGE函数返回数据集中第K个最大值。使用此函数可以根据相对标准来选择数值。
语法:LARGE(array,k)
Array为需要从中选择第K个最大值的数组或数据区域;K为返回值在数组或数据单元格区域中的位置(从大到小排)。
4、SMALL函数返回数据集中第K个最小值。使用此函数可以返回数据集中特定位置上的数值。
语法:SMALL(array,k)
Array为需要找到第K个最小值的数组或数字型数据区域;K为返回的数据在数组或数据区域里的位置(从小到大)。
六、让序号不参与排序
对数据表进行排序操作后,通常位于第一列的序号也被打乱了,如何不让这个“序号”列参与排序呢?在“序号”列右侧插入一个空白列(B列),将“序号”列与数据表隔开。用上述方法对右侧的数据区域进行排序时,“序号”列就不参与排序了。
2.2.3 排序的规范:
1、广义上说,只要有数据列表,就要考虑选择一种排序方式。数据界面中的数据行的排列一定要有讲究,不应随意排列,除了符合用户的习惯外,即使是流水帐,也要按业务发生的顺序排列,并且把排序关键子列于数据列表的最左侧,比如表1的成绩单中的“专业”、“班级”、“学号”。
2、 准确地使用表的标题作为提示语是提高表达效果的重要环节。使用提示语作为排序后的数据表的标题,这样有助于提高表达效果。比如:当看到数据列表上的“按学号排序的学生成绩表”这个标题时,读者一下就会读懂数据表要表达的意思。还要在适当的旁白中标明排序的作用。