reorderColumns!

Parent Previous Next


语法


reorderColumns!(table, reorderedColNames)


参数


table是一个没有被共享的内存表。


reorderedColNames是一个字符串向量,表示调整顺序后的列名。此参数中只需写出表中发生顺序改变的列以及所有在其之前的列名。例如,将表中第3列于第6列的位置对换,则此参数只需写出前6列的列名。


详情


调整表中各列的顺序。该命令直接在原有的表中修改,不会产生新的表。


例子



>sym = `C`MS`MS`MS`IBM`IBM`C`C`C

price= 49.6 29.46 29.52 30.02 174.97 175.23 50.76 50.32 51.29                        

qty = 2200 1900 2100 3200 6800 5400 1300 2500 8800                                

timestamp = [09:34:07,09:36:42,09:36:51,09:36:59,09:32:47,09:35:26,09:34:16,09:34:26,09:38:12]

t = table(timestamp, sym, qty, price);


>t;

timestamp sym qty  price

--------- --- ---- ------

09:34:07  C   2200 49.6  

09:36:42  MS  1900 29.46

09:36:51  MS  2100 29.52

09:36:59  MS  3200 30.02

09:32:47  IBM 6800 174.97

09:35:26  IBM 5400 175.23

09:34:16  C   1300 50.76

09:34:26  C   2500 50.32

09:38:12  C   8800 51.29


>reorderColumns!(t,`sym`timestamp`price`qty)

t;

sym timestamp price  qty

--- --------- ------ ----

C   09:34:07  49.6   2200

MS  09:36:42  29.46  1900

MS  09:36:51  29.52  2100

MS  09:36:59  30.02  3200

IBM 09:32:47  174.97 6800

IBM 09:35:26  175.23 5400

C   09:34:16  50.76  1300

C   09:34:26  50.32  2500

C   09:38:12  51.29  8800


>reorderColumns!(t,`timestamp`sym);

>t;

timestamp sym price  qty

--------- --- ------ ----

09:34:07  C   49.6   2200

09:36:42  MS  29.46  1900

09:36:51  MS  29.52  2100

09:36:59  MS  30.02  3200

09:32:47  IBM 174.97 6800

09:35:26  IBM 175.23 5400

09:34:16  C   50.76  1300

09:34:26  C   50.32  2500

09:38:12  C   51.29  8800