|
|
| (26 intermediate revisions by 4 users not shown) |
| Line 3: |
Line 3: |
| | *[[ Z3 | << Z3 Home ]] | | *[[ Z3 | << Z3 Home ]] |
| | *[[ Z%5E3_Language_Documentation | Z3 Language Documentation]] | | *[[ Z%5E3_Language_Documentation | Z3 Language Documentation]] |
| | + | *[[ Z%5E3_Array_Manipulation_Member_Functions | Listing of Z3 Array Manipulation Member Functions]] |
| | + | *[[ Z%5E3_Map_Reduce | Map Reduce]] |
| | + | |
| | + | |
| | | | |
| | | | |
| Line 47: |
Line 51: |
| | | | |
| | b=a.chunks(10) | | b=a.chunks(10) |
| − | b.$$(SUM) | + | </br>b.$$(SUM) |
| | | | |
| | {| class="wikitable"|- | | {| class="wikitable"|- |
| Line 71: |
Line 75: |
| | |} | | |} |
| | | | |
| − |
| |
| − | *[[ Z3 | << Z3 Home ]]
| |
| − | *[[ Z%5E3_Language_Documentation | Z3 Language Documentation]]
| |
| | | | |
| | | | |
| − | A listing of the Array functions are given below:
| |
| − | <pre>
| |
| − | $
| |
| − | $$
| |
| − | $$$
| |
| − | $$F
| |
| − | $A
| |
| − | $C
| |
| − | $CELLS
| |
| − | $R
| |
| − | $X
| |
| − | $_
| |
| − | $d
| |
| − | $diag
| |
| − | $dth
| |
| − | $x
| |
| − | X$
| |
| − | ZJSON
| |
| − | __$
| |
| − | ac
| |
| − | accumulate
| |
| − | accumulatewith
| |
| − | across
| |
| − | add
| |
| − | addcolumn
| |
| − | addrow
| |
| − | addsequence
| |
| − | adjoint
| |
| − | aggregate
| |
| − | any
| |
| − | appendfunction
| |
| − | ar
| |
| − | async
| |
| − | atindex
| |
| − | atnode
| |
| − | backward
| |
| − | bindcolumn
| |
| − | branch
| |
| − | branchvalues
| |
| − | c
| |
| − | calci
| |
| − | car
| |
| − | cartesianproduct
| |
| − | cdr
| |
| − | cell
| |
| − | cells
| |
| − | checktype
| |
| − | chunks
| |
| − | ci
| |
| − | clean
| |
| − | clear
| |
| − | clearcopy
| |
| − | clearrepeats
| |
| − | clone
| |
| − | colconcat
| |
| − | colcount
| |
| − | collect
| |
| − | collectasvector
| |
| − | collectwhile
| |
| − | collectwhileasvector
| |
| − | column
| |
| − | columnconcat
| |
| − | columns
| |
| − | compare
| |
| − | concatall
| |
| − | converge
| |
| − | copy
| |
| − | core
| |
| − | count
| |
| − | crosstab
| |
| − | cube
| |
| − | cumcolumn
| |
| − | cumcolumns
| |
| − | cumcolumnswith
| |
| − | cumcolumnwith
| |
| − | cumrow
| |
| − | cumrows
| |
| − | cumrowswith
| |
| − | cumrowwith
| |
| − | cumulate
| |
| − | data
| |
| − | dc
| |
| − | deal
| |
| − | deepcopy
| |
| − | deletecolumn
| |
| − | deleterow
| |
| − | det
| |
| − | determinant
| |
| − | dim
| |
| − | div
| |
| − | divide
| |
| − | dr
| |
| − | drop
| |
| − | dropwhile
| |
| − | dropwhileasvector
| |
| − | eighteenth
| |
| − | eighth
| |
| − | eleventh
| |
| − | equal
| |
| − | equalvalues
| |
| − | eval
| |
| − | except
| |
| − | exec
| |
| − | explode
| |
| − | extract
| |
| − | few
| |
| − | fifteenth
| |
| − | fifth
| |
| − | fillwith
| |
| − | filtermatches
| |
| − | filteroncolumn
| |
| − | filteroncondition
| |
| − | filteronrow
| |
| − | findcellref
| |
| − | first
| |
| − | firstelement
| |
| − | firsthalf
| |
| − | fixat
| |
| − | fjoin
| |
| − | flatten
| |
| − | flip
| |
| − | flipparts
| |
| − | fold
| |
| − | foldl
| |
| − | foldr
| |
| − | forward
| |
| − | fourteenth
| |
| − | fourth
| |
| − | fourths
| |
| − | funcjoin
| |
| − | gettype
| |
| − | graph
| |
| − | graphin
| |
| − | half
| |
| − | halves
| |
| − | hderef
| |
| − | head
| |
| − | headings
| |
| − | hindex
| |
| − | hundredth
| |
| − | i
| |
| − | ic
| |
| − | ids
| |
| − | implode
| |
| − | inc
| |
| − | include
| |
| − | indices
| |
| − | injoin
| |
| − | insert
| |
| − | insertcolumn
| |
| − | insertrow
| |
| − | inverse
| |
| − | ir
| |
| − | is
| |
| − | is1d
| |
| − | is2d
| |
| − | isFalse
| |
| − | isTrue
| |
| − | islikelytype
| |
| − | isnotnull
| |
| − | isnull
| |
| − | istype
| |
| − | j
| |
| − | joincolumnswith
| |
| − | joinrowswith
| |
| − | joinwith
| |
| − | jq
| |
| − | keep
| |
| − | last
| |
| − | lastelement
| |
| − | list
| |
| − | lookup
| |
| − | make
| |
| − | make1to2d
| |
| − | makecore
| |
| − | makekeyarray
| |
| − | maplist
| |
| − | mapper
| |
| − | maprow
| |
| − | mask
| |
| − | match
| |
| − | matchcolumn
| |
| − | matchindex
| |
| − | matchrow
| |
| − | matchvalue
| |
| − | merge
| |
| − | mergecolumns
| |
| − | mergeio
| |
| − | mergerows
| |
| − | mid
| |
| − | millionth
| |
| − | multiply
| |
| − | nicejoin
| |
| − | nineteenth
| |
| − | nineth
| |
| − | nodeindex
| |
| − | notinclude
| |
| − | notwithinlimits
| |
| − | nth
| |
| − | ntimes
| |
| − | nullifyobjects
| |
| − | numbers
| |
| − | o
| |
| − | objects
| |
| − | of
| |
| − | otherthan
| |
| − | pack
| |
| − | pad
| |
| − | pair
| |
| − | pairmatch
| |
| − | partitiononcondition
| |
| − | parts
| |
| − | pastefolds
| |
| − | pick
| |
| − | pieces
| |
| − | pip
| |
| − | pipall
| |
| − | pipallwithslice
| |
| − | plot
| |
| − | prefix
| |
| − | primitives
| |
| − | print
| |
| − | printf
| |
| − | r
| |
| − | rand
| |
| − | random
| |
| − | remove
| |
| − | removeByVal
| |
| − | removeindices
| |
| − | removewith
| |
| − | repeatntimes
| |
| − | replace
| |
| − | replicate
| |
| − | rest
| |
| − | result
| |
| − | reverselevel
| |
| − | reversepip
| |
| − | reversesort
| |
| − | ri
| |
| − | rotate
| |
| − | rotatecolumns
| |
| − | rotaterows
| |
| − | row
| |
| − | rowconcat
| |
| − | rowcount
| |
| − | rowlengths
| |
| − | rowpush
| |
| − | rows
| |
| − | rslice
| |
| − | second
| |
| − | secondhalf
| |
| − | seq
| |
| − | set
| |
| − | setHeadings
| |
| − | setaxis
| |
| − | setcolumn
| |
| − | setrow
| |
| − | setunit
| |
| − | seventeenth
| |
| − | seventh
| |
| − | shiftlevel
| |
| − | shuffle
| |
| − | sixteenth
| |
| − | sixth
| |
| − | size
| |
| − | size2d
| |
| − | slices
| |
| − | slides
| |
| − | sortrecursively
| |
| − | sortwith
| |
| − | specialprint
| |
| − | spliteach
| |
| − | splitwhile
| |
| − | splitwhileasvector
| |
| − | stringlist
| |
| − | subtract
| |
| − | suchthat
| |
| − | suchthatasvector
| |
| − | suffix
| |
| − | t
| |
| − | table
| |
| − | tablelookup
| |
| − | tail
| |
| − | takewhile
| |
| − | takewhileasvector
| |
| − | tenth
| |
| − | third
| |
| − | thirds
| |
| − | thirteenth
| |
| − | thousandth
| |
| − | tofunctions
| |
| − | toobjectformat
| |
| − | totree
| |
| − | transpose
| |
| − | truefalse
| |
| − | twelfth
| |
| − | twentieth
| |
| − | twod
| |
| − | type
| |
| − | uncrosstab
| |
| − | unimplode
| |
| − | unimplodeleaf
| |
| − | unitsof
| |
| − | unwrapleaf
| |
| − | unzip
| |
| − | value
| |
| − | where
| |
| − | withinlimits
| |
| − | withouttail
| |
| − | x$
| |
| − | xy
| |
| − | xypanel
| |
| − | z3
| |
| − | zero
| |
| − | zip
| |
| − | zoompip
| |
| − | 㪭㭲
| |
| − | </pre>
| |
| | | | |
| | | | |
| | + | *[[ Z%5E3_Array_Manipulation_Member_Functions | Listing of Z3 Array Manipulation Member Functions]] |
| | *[[ Z%5E3_Language_Documentation | Z3 Language Documentation]] | | *[[ Z%5E3_Language_Documentation | Z3 Language Documentation]] |
| | *[[ Z3 | << Z3 Home ]] | | *[[ Z3 | << Z3 Home ]] |
Introduction to Array Manipulation
Arrays/Sets/Matrices are fundamental data structures in z^3. Manipulation of such data structures are often done using custom code in most languages. However, z^3 offers a ton of Array member functions that make it a breeze to handle and manipulate such data structures.
For example, take .chunks().
a=1..100;
This creates a list of 100 numbers. Now, let us make them into chunks of 10 each.
a.chunks(10)
gives
| 1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10
|
| 11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20
|
| 21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30
|
| 31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40
|
| 41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50
|
| 51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60
|
| 61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70
|
| 71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80
|
| 81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90
|
| 91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100
|
Simple, isn't it?
The result gives a 10x10 matrix filled with the sequence of numbers from 1 to 100.
Let us say we want to calculate the sum of each row in this 10x10 matrix. The $$ row wise mapping function comes to the rescue.
b=a.chunks(10)
b.$$(SUM)
| 55
|
| 155
|
| 255
|
| 355
|
| 455
|
| 555
|
| 655
|
| 755
|
| 855
|
| 955
|