本节重点:Power Query - 行、列、表的构造
之前我们讲过了已有数据的构造,这次我们使用空查询来简单讲解一下行(record)、列(list)、表(table)的创建。
一、行(record)
如何来构造一行数据呢?
在编辑栏中用 “[]” 符号进行书写,例如:“[a=1,b=2,c=3]” 表明有这样一行记录,“a”,”b”,”c” 三列的记录分别”1“,”2“,”3“。
我们对其进行” 转置 “,其实就是这样的一条记录,我们称之为”record“。
二、列(list)
如何来构造一列数据呢?
在编辑栏中用 “{}” 符号进行书写,例如:”{1,2,3,4,5,6,7,8,9}“表明该列的数据为 1~9。
Format : {lowest_integer..highest_integer}
For example, imagine you want to create a list with all of the integers between 1 and 5. Instead of writing
但是”{1,2,3,4,5,6,7,8,9}“这种方式不觉得很麻烦么?其实连续的序列可以使用两个点的方式连接,比如 1~9,我们可以这样写:
“{1..9}“
效果是一样的!
然后我们需要数字和字母的组合,怎么书写呢?
同样的方法,比如 1h,我们就可以用”,“分隔,写法如下:
”{1..9,”a”..”h”}“
值得注意的是,我们在书写字符的时候需要加上双引号!
好奇的朋友可能会问了,”..“它是按照什么顺序来排列的咧?
答案是:unicode 字符列表
推荐一篇博文,里面有这个 unicode 字符列表集合:
http://blog.csdn.net/zhongguomao/article/details/54405637
比如上图,我们需要这样一个 list,”#“~”/“。
完全是按照这样的顺序的。
这个方法对于产生小数、日期是不适用的,但可改用:
List.Date( )
List.Number( )
来达到这个目的。
三、表(table)
如何来构造一个表的数据呢?
在编辑栏中用 “#table({},{ })” 固定格式进行书写,分为两部分,前面一个”{}“写我们的列名,后面一个”{}“写列的内容,每一行记录即一个”{}“。
例如”#table({“姓名”,”性别”,”年龄”},{undefined{“休闲海”,”男”,18}})“。
多条记录同样用”,“隔开。
”#table({“姓名”,”性别”,”年龄”},{undefined{“休闲海”,”男”,18},{“张小杰”,”女”,35}})“。
同样,这里用上面所学的 list 里面的”..” 方式也是可以的,还更加简便。
比如有 A~D 四列:
“#table({“A”..”D”},{{1..4},{“a”..”d”},{“*”..”-“},{“ 一 “..” 七 “}})”
这里注意了,前面是四列,后面的内容一定也是需要四列,否则会报错,这里我们都是正好凑满的四列数据。