GRADE UP |
1. |
Progressive index of (without replacement)
|
XA1; YA1
|
|
((½X)½X¼X,Y)¼(½Y)½X¼Y,X
|
2. |
Ascending cardinal numbers (ranking, shareable)
|
XD1 |
|
.5×(X)+²²X
|
3. |
Cumulative maxima (\) of subvectors of Y indicated by X
|
XB1; YD1
|
|
Y[A¼\AA[(+\X)[AY]]]
|
4. |
Cumulative minima (\) of subvectors of Y indicated by X
|
XB1; YD1
|
|
Y[A¼\AA[(+\X)[AY]]]
|
5. |
Progressive index of (without replacement)
|
XA1; YA1
|
|
((X¼X,Y)¼¼½X)¼(X¼Y,X)¼¼½Y
|
6. |
Test if X and Y are permutations of each other
|
XD1; YD1
|
|
Y[Y]^.=X[X]
|
7. |
Test if X is a permutation vector
|
XI1 |
|
X^.=X |
8. |
Grade up () for sorting subvectors of X having lengths Y
|
XD1; YI1; (½X)
+/Y
|
|
A[(+\(¼½Y)¹+\IO,X)[AY]]
|
9. |
Index of the elements of X in Y
|
XD1; YD1
|
|
(((1,A)/B)1+½Y)[(½Y)(+\1,A(1A)¬¯1AA[B])[BAY,X]]
|
10. |
Minima (/) of elements of subvectors of Y indicated by X
|
XB1; YD1
|
|
Y[A[X/(+\X)[AY]]]
|
11. |
Grade up () for sorting subvectors of Y indicated by X
|
XB1; YD1
|
|
A[(+\X)[AY]]
|
12. |
Occurences of the elements of X
|
XD1 |
|
|-(2,½X)½X,X
|
13. |
Sorting rows of matrix X into ascending order
|
XD2 |
|
(½X)½(,X)[A[(,³(²½X)½¼1½X)[A,X]]]
|
14. |
Adding a new dimension after dimension G Y-fold
|
GI0; YI0; XA
|
|
((G+1),¼½½X)³(Y,½X)½X
|
15. |
Sorting rows of matrix X into ascending order
|
XD2 |
|
(½X)½(,X)[IO+A[A÷¯1½X]]
A(,X)-IO |
16. |
Y smallest elements of X in order of occurrence
|
XD1, YI0
|
|
((X)¹¼Y)/X
|
17. |
Merging X, Y, Z ... under control of G (mesh)
|
XA1; YA1; ZA1; ... ; GI1
|
|
(Y,X,Z,...)[G]
|
18. |
Merging X and Y under control of G (mesh)
|
XA1; YA1; GB1
|
|
(X,Y)[G]
|
19. |
Ascending cardinal numbers (ranking, all different)
|
XD1 |
|
X |
20. |
Grade down () for sorting subvectors of Y having lengths X
|
XD1; YI1; (½X)
+/Y
|
|
A[(+\(¼½Y)¹+\IO,X)[AY]]
|
21. |
Maxima (/) of elements of subvectors of Y indicated by X
|
XB1; YD1
|
|
Y[A[X/(+\X)[AY]]]
|
22. |
Grade down () for sorting subvectors of Y indicated by X
|
XB1; YD1
|
|
A[(+\X)[AY]]
|
23. |
Y largest elements of X in order of occurrence
|
XD1; YI0
|
|
((X)¹¼Y)/X
|
24. |
Merging X and Y under control of G (mesh)
|
XA1; YA1; GB1
|
|
(Y,X)[G]
|
25. |
Descending cardinal numbers (ranking, all different)
|
XD1 |
|
X |
26. |
Sorting rows of X according to key Y (alphabetizing)
|
XA2; YA1
|
|
X[(1+½Y)Y¼³X;]
|
27. |
Diagonal ravel |
XA |
|
(,X)[+(½X)(¼½,X)-IO]
|
28. |
Grade up according to key Y |
YA1; XA1
|
|
Y¼X |
29. |
Test if X is a permutation vector
|
XI1 |
|
X[X]^.=¼½X |
30. |
Sorting a matrix into lexicographic order
|
XD2 |
|
X[+A<.-³a„x,0;]
|
31. |
Sorting words in list X according to word length
|
XC2 |
|
X[X+.¬' ';] |
32. |
Classification of X to classes starting with Y
|
XD1;YD1;Y<.‰1²y
|
|
A A[(B/C)-½Y]B/+\~B(½Y) |
33. |
Rotate first elements (1²) of subvectors of Y indicated by X
|
XB1; YA1
|
|
Y[X++\X] |
34. |
Doubling quotes (for execution)
|
XC1 |
|
(X,'''')[(IO+½X)(¼½X),(''''=X)/¼½X]
|
35. |
Inserting Y *'s into vector X after indices G
|
XC1; YI0; GI1
|
|
(X,'*')[(IO+½X)(¼½X),(Y×½G)½G]
|
36. |
Median |
XD1 |
|
X[(X)[.5×½X]]
|
37. |
Index of last maximum element of X
|
XD1 |
|
¯1X |
38. |
Index of (first) minimum element of X
|
XD1 |
|
1X |
39. |
Expansion vector with zero after indices Y
|
XD1; YI1
|
|
(½X)(¼½X),Y
|
40. |
Catenating G elements H before indices Y in vector X
|
XA1; YI1; GI0; HA0
|
|
((A½H),X)[(A½Y),¼½X] AG×½,Y
|
41. |
Catenating G elements H after indices Y in vector X
|
XA1; YI1; GI0; HA0
|
|
(X,A½H)[(¼½X),A½Y] AG×½,Y
|
42. |
Merging X and Y under control of G (mesh)
|
XA1; YA1; GB1
|
|
A A[G]AY,X
|
43. |
Sorting a matrix according to Y:th column
|
XD2 |
|
X[X[;Y];] |
44. |
Sorting indices X according to data Y
|
XI1; YD1
|
|
X[Y[X]] |
45. |
Choosing sorting direction during execution
|
XD1; YI0
|
|
Xׯ1 1[Y] |
46. |
Sorting Y according to X |
XA1; YA1
|
|
Y[X] |
47. |
Sorting X into ascending order
|
XD1 |
|
X[X] |
48. |
Inverting a permutation |
XI1 |
|
X |
GRADE DOWN |
49. |
Reverse vector X on condition Y
|
XA1; YB0
|
|
X[Y!¼½X] |
50. |
Sorting a matrix into reverse lexicographic order
|
XD2 |
|
X[+A<.-³a„x,0;]
|
52. |
Reversal (²) of subvectors of X having lengths Y
|
XD1; YI1
|
|
X[²+\(¼½X)¹+\IO,Y]
|
53. |
Reversal (²) of subvectors of Y indicated by X
|
XB1; YA1
|
|
Y[²+\X] |
55. |
Indices of ones in logical vector X
|
XB1 |
|
(+/X)X
|
56. |
Index of first maximum element of X
|
XD1 |
|
1X |
57. |
Moving all blanks to end of text
|
XC1 |
|
X[' '¬X] |
58. |
Sorting X into descending order
|
XD1 |
|
X[X] |
59. |
Moving elements satisfying condition Y to the start of X
|
XA1; YB1
|
|
X[Y] |
MATRIX INVERSION / MATRIX DIVISION
|
60. |
Interpolated value of series (X,Y) at G
|
XD1; YD1; GD0
|
|
GYX°.*²-IO-¼½X
|
61. |
Predicted values of exponential (curve) fit
|
XD1; YD1
|
|
*A+.×(µY)AX°.*0 1
|
62. |
Coefficients of exponential (curve) fit of points (X,Y)
|
XD1; YD1
|
|
A A[1]*A[1] A(µY)X°.*0 1
|
63. |
Predicted values of best linear fit (least squares)
|
XD1; YD1
|
|
A+.×YAX°.*0 1
|
64. |
G-degree polynomial (curve) fit of points (X,Y)
|
XD1; YD1
|
|
²YX°.*0,¼G |
65. |
Best linear fit of points (X,Y) (least squares)
|
XD1; YD1
|
|
YX°.*0 1 |
DECODE |
66. |
Binary format of decimal number X
|
XI0 |
|
10((1+2µ/,X)½2)X
|
67. |
Barchart of two integer series (across the page)
|
XI2; 1½½X
2
|
|
' *±µ'[IO+2X°.¼/,X]
|
68. |
Case structure with an encoded branch destination
|
YI1; XB1
|
|
Y[1+2X]
|
69. |
Representation of current time (24 hour clock)
|
|
|
A A[3 6]':'
A100033TS |
70. |
Representation of current date (descending format)
|
|
|
A A[5 8]'-' A10003TS
|
71. |
Representation of current time (12 hour clock)
|
|
|
(1²,' ::',3 2½6 010012 0
0|33TS),'AP'[1+12TS[4]],'M' |
73. |
Removing duplicate rows |
XA2 |
|
((A¼A)=¼½A2X^.=³X)X
|
74. |
Conversion from hexadecimal to decimal
|
XC |
|
16-IO-'0123456789ABCDEF'¼³X
|
75. |
Conversion of alphanumeric string into numeric
|
XC1 |
|
10¯1+'0123456789'¼X
|
76. |
Value of polynomial with coefficients Y at points X
|
XD1; YD1
|
|
(X°.+,0)Y |
77. |
Changing connectivity list X to a connectivity matrix
|
XC2 |
|
B½A A[IO+B[1]-IO-X]1
A(×/B0 0+/,X)½0 |
78. |
Present value of cash flows X at interest rate Y %
|
XD1; YD0
|
|
(÷1+Y÷100)²X
|
79. |
Justifying right |
XC |
|
(1-(' '=X)1)²X
|
80. |
Number of days in month X of years Y (for all leap years)
|
XI0; YI
|
|
(12½7½31 30)[X]-0¯1+2(X=2),[.1](0¬400|Y)-(0¬100|Y)-0¬4|Y
|
81. |
Number of days in month X of years Y (for most leap years)
|
XI0; YI
|
|
(12½7½31 30)[X]-0¯1+2(X=2),[.1]0¬4|Y
|
82. |
Encoding current date |
|
|
100100|3TS
|
83. |
Removing trailing blanks |
XC1 |
|
(1-(' '=X)1)X
|
84. |
Index of first non-blank, counted from the rear
|
XC1 |
|
(' '=X)1 |
85. |
Indexing scattered elements |
XA; YI2
|
|
(,X)[IO+(½X)Y-IO]
|
86. |
Conversion of indices Y of array X to indices of raveled X
|
XA; YI2
|
|
IO+(½X)Y-IO
|
87. |
Number of columns in array X as a scalar
|
XA |
|
0½X |
88. |
Future value of cash flows X at interest rate Y %
|
XD1; YD0
|
|
(1+Y÷100)X |
89. |
Sum of the elements of vector X
|
XD1 |
|
1X |
90. |
Last element of numeric vector X as a scalar
|
XD1 |
|
0X |
91. |
Last row of matrix X as a vector
|
XA |
|
0X |
92. |
Integer representation of logical vectors
|
XB |
|
2X |
93. |
Value of polynomial with coefficients Y at point X
|
XD0; YD
|
|
XY |
ENCODE |
94. |
Conversion from decimal to hexadecimal (X=1..255) |
XI |
|
³'0123456789ABCDEF'[IO+((/16µ,X)½16)X]
|
95. |
All binary representations up to X (truth table)
|
XI0 |
|
((2µ1+X)½2)0,¼X
|
96. |
Representation of X in base Y |
XD0; YD0
|
|
((1+YµX)½Y)X
|
97. |
Digits of X separately |
XI0 |
|
((1+10µX)½10)X
|
98. |
Helps locating column positions 1..X
|
XI0 |
|
1 010 101-IO-¼X
|
99. |
Conversion of characters to hexadecimal representation (AV)
|
XC1 |
|
,' ',³'0123456789ABCDEF'[IO+16 16-IO-AV¼X]
|
100. |
Polynomial with roots X |
XD1 |
|
²((0,¼½X)°.=+~A)+.×(-X)×.*A((½X)½2)¯1+¼2*½X
|
101. |
Index pairs of saddle points |
XD2 |
|
IO+(½X)-IO-(,(X=(½X)½X)^X=³(²½X)½/X)/¼×/½X
|
102. |
Changing connectivity matrix X to a connectivity list
|
XC2 |
|
(,X)/1+A¯1+¼×/A½X
|
103. |
Matrix of all indices of X |
XA |
|
IO+(½X)(¼×/½X)-IO
|
104. |
Separating a date YYMMDD to YY, MM, DD
|
XD |
|
³(3½100)X |
105. |
Indices of elements Y in array X
|
XA; YA
|
|
IO+(½X)(-IO)+(,X¹Y)/¼½,X
|
106. |
All pairs of elements of ¼X and ¼Y
|
XI0; YI0
|
|
IO+(X,Y)(¼X×Y)-IO
|
107. |
Matrix for choosing all subsets of X (truth table)
|
XA1 |
|
((½X)½2)¯1+¼2*½X
|
108. |
All binary representations with X bits (truth table)
|
XI0 |
|
(X½2)¯1+¼2*X
|
109. |
Incrementing cyclic counter X with upper limit Y
|
XD; YD0
|
|
1+YX |
110. |
Decoding numeric code ABBCCC into a matrix
|
XI |
|
10 100 1000X
|
111. |
Integer and fractional parts of positive numbers
|
XD |
|
0 1X |
LOGARITHM µ |
112. |
Number of decimals of elements of X
|
XD1 |
|
10µ(('.'¬A)/AX)÷X
|
113. |
Number of sortable columns at a time using and alphabet X
|
XC1 |
|
(1+½X)µ2*(A=¯1+A2*¼128)¼1
|
114. |
Playing order in a cup for X ranked players
|
XI0 |
|
,³(A½2)½(2*A2µX)¼X
|
115. |
Arithmetic precision of the system (in decimals)
|
|
|
|10µ|1-3×÷3 |
116. |
Number of digitpositions in integers in X
|
XI |
|
1+(X<0)+˜10µ|x+0=x
|
117. |
Number of digit positions in integers in X
|
XI |
|
1+10µ(X=0)+X×1 ¯10[1+X<0]
|
118. |
Number of digits in positive integers in X
|
XI |
|
1+10µX+0=X |
BRANCH
|
119. |
Case structure according to key vector G
|
XA0; YI1; GA1
|
|
Y[G¼X] |
120. |
Forming a transitive closure |
XB2 |
|
LC¼/,(XXX.^X)¬+X
|
121. |
Case structure with integer switch
|
XI0; YI1
|
|
X²Y |
122. |
For-loop ending construct |
XI0; YI0; GI0
|
|
Y¼GXX+1
|
123. |
Conditional branch to line Y |
XB0; YI0; Y>0
|
|
Y¼X |
124. |
Conditional branch out of program
|
XB0 |
|
0¼X |
125. |
Conditional branch depending on sign of X
|
XI0; YI1
|
|
Y[2+×X] |
126. |
Continuing from line Y (if X>0) or exit
|
XD0; YI0
|
|
Y××X |
127. |
Case structure using levels with limits G
|
XD0; GD1; YI1
|
|
(XG)/Y
|
128. |
Case structure with logical switch (preferring from start)
|
XB1; YI1
|
|
X/Y |
129. |
Conditional branch out of program
|
XB0 |
|
0×¼X |
EXECUTE |
132. |
Test for symmetricity of matrix X
|
XA2 |
|
'1',''[IO+^/(½X)=²½X],'''0~0¹X=³X'''
|
133. |
Using a variable named according to X
|
XA0; YA
|
|
'VAR',(X),'Y'
|
134. |
Rounding to PP precision
|
XD1 |
|
X |
135. |
Convert character or numeric data into numeric
|
XA1 |
|
X |
136. |
Reshaping only one-element numeric vector X into a scalar
|
XD1 |
|
X |
137. |
Graph of F(X) at points X ('X'¹F)
|
FA1; XD1
|
|
'
*'[IO+(²(¯1+/A)+¼1+(/A)-/A)°.=A.5+F]
|
138. |
Conversion of each row to a number (default zero)
|
XC2 |
|
(X.¬' ')\1'0 ',,X,' '
|
139. |
Test for symmetricity of matrix X
|
XA2 |
|
(¯7*A^.=²A½X)'0~0¹X=³X'
|
140. |
Execution of expression X with default value Y
|
XD1 |
|
((X^.=' ')/'Y'),X
|
141. |
Changing X if a new input value is given
|
XA |
|
X,((2'X'),' ',[.5]A)[IO+~' '^.=A;]
|
142. |
Definite integral of F(X) in range Y with G steps ('X'¹F)
|
FA1; GD0; YD1; ½Y
2
|
|
A+.×F,0½XY[1]+(A--/Y÷G)×0,¼G
|
143. |
Test if numeric and conversion to numeric form
|
XC1 |
|
1'0 ',(^/X¹' 0123456789')/X
|
144. |
Tests the social security number (Finnish)
|
Y'01...9ABC...Z'; 10=½X
|
|
(¯1X)=((~Y¹'GIOQ')/Y)[1+31|9X]
|
145. |
Conditional execution |
XB0 |
|
X/'EXPRESSION'
|
146. |
Conditional branch out of programs
|
XL0 |
|
X/'
' |
147. |
Using default value 100 if X does not exist
|
XA |
|
(¯3*2¬NC 'X')'X100'
|
148. |
Conditional execution |
XB0; YA1
|
|
X'© ...'
|
149. |
Giving a numeric default value for input
|
XD0 |
|
1½(,',¼0'),X
|
150. |
Assign values of expressions in X to variables named in Y
|
XC2; YC2
|
|
A,',','(','0','½',Y,'',X,')'
|
151. |
Evaluation of several expressions; results form a vector
|
XA |
|
,',','(',',',X,')'
|
152. |
Sum of numbers in character matrix X
|
XA2 |
|
,'+',X |
153. |
Indexing when rank is not known beforehand
|
XA; YI
|
|
'X[',((¯1+½½X)½';'),'Y]'
|
FORMAT |
154. |
Numeric headers (elements of X) for rows of table Y
|
XD1; YA2
|
|
(3²7 0X°.+,0),Y
|
155. |
Formatting a numerical vector to run down the page
|
XD1 |
|
X°.+,0 |
156. |
Representation of current date (ascending format)
|
|
|
A A[(' '=A)/¼½A]'.' A²3TS
|
157. |
Representation of current date (American)
|
|
|
A A[(' '=A)/¼½A]'/'
A100|1²3TS |
158. |
Formatting with zero values replaced with blanks
|
XA |
|
(½A)½B\(B,('0'¬A)' '¬¯1²A)/,A' ',X
|
159. |
Number of digit positions in scalar X (depends on PP)
|
XD0 |
|
½X |
160. |
Leading zeroes for X in fields of width Y
|
XI1; YI0; X0
|
|
0 1(2Y+1)X°.+,10*Y
|
161. |
Row-by-row formatting (width G) of X with Y decimals per row
|
XD2; YI1; GI0
|
|
((1,G)×½X)½2 1 3³(²G,½X)½(,G,[1.1]Y)³X
|
163. |
Formatting X with H decimals in fields of width G
|
XD; GI1; HI1
|
|
(,G,[1.1]H)X
|
ROLL / DEAL ? |
164. |
Y-shaped array of random numbers within ( X[1],X[2] ]
|
XI1; YI1
|
|
X[1]+?Y½--/X |
165. |
Removing punctuation characters
|
XA1 |
|
(~X¹' .,:;?''')/X |
166. |
Choosing Y objects out of ¼X with replacement (roll)
|
YI; XI
|
|
?Y½X |
167. |
Choosing Y objects out of ¼X without replacement (deal)
|
XI0; YI0
|
|
Y?X |
GEOMETRICAL FUNCTIONS ±
|
168. |
Arctan Y÷X |
XD; YD
|
|
((X¬0)ׯ3±Y÷X+X=0)+±((X=0)×.5××Y)+(X<0)×1-2×y<0
|
169. |
Conversion from degrees to radians
|
XD |
|
X×±÷180 |
170. |
Conversion from radians to degrees
|
XD |
|
X×180÷±1 |
171. |
Rotation matrix for angle X (in radians) counter-clockwise
|
XD0 |
|
2 2½1 ¯1 1 1×2 1 1 2±X
|
FACTORIAL / BINOMIAL !
|
172. |
Number of permutations of X objects taken Y at a time
|
XD; YD
|
|
(!Y)×Y!X |
173. |
Value of Taylor series with coefficients Y at point X
|
XD0; YD1
|
|
+/Y×(X*A)÷!A¯1+¼½Y
|
174. |
Poisson distribution of states X with average number Y
|
XI; YD0
|
|
(*-Y)×(Y*X)÷!X |
175. |
Gamma function |
XD0 |
|
!X-1 |
176. |
Binomial distribution of X trials with probability Y
|
XI0; YD0
|
|
(A!X)×(Y*A)×(1-Y)*X-A-IO-¼X+1
|
177. |
Beta function |
XD0; YD0
|
|
÷Y×(X-1)!Y+X-1 |
178. |
Selecting elements satisfying condition X, others to 1
|
XB; YD
|
|
X!Y |
179. |
Number of combinations of X objects taken Y at a time
|
XD; YD
|
|
Y!X |
INDEX OF ¼ |
180. |
Removing elements Y from beginning and end of vector X
|
XA1; YA
|
|
((A¼1)-IO)(IO-(²A~X¹Y)¼1)X
|
181. |
Alphabetical comparison with alphabets G
|
XA; YA
|
|
(G¼X) |
183. |
Sum over elements of X determined by elements of Y
|
XD1; YD1
|
|
X+.×Y°.=((¼½Y)=Y¼Y)/Y
|
184. |
First occurrence of string X in string Y
|
XA1; YA1
|
|
(^(¯1+¼½X)²X°.=Y)¼1
|
185. |
Removing duplicate rows |
XA2 |
|
((A¼A)=¼½AIO++^X.¬³X)X
|
186. |
First occurrence of string X in matrix Y
|
XA2; YA1; ¯1½Y
½X
|
|
(Y^.=X)¼1 |
187. |
Indices of ones in logical vector X
|
XB1 |
|
(+\X)¼¼+/X |
188. |
Executing costly monadic function F on repetitive arguments
|
XA1 |
|
(F B/X)[+\B(X¼X)=¼½X]
|
189. |
Index of (first) maximum element of X
|
XD1 |
|
X¼/X |
190. |
Index of first occurrence of elements of Y
|
XC1; YC1
|
|
/X¼Y |
191. |
Index of (first) minimum element of X
|
XD1 |
|
X¼/X |
192. |
Test if each element of X occurs only once
|
XA1 |
|
^/(X¼X)=¼½X |
193. |
Test if all elements of vector X are equal
|
XA1 |
|
^/IO=X¼X |
194. |
Interpretation of roman numbers
|
XA |
|
+/Aׯ1*A<1²a„0,1000 500 100 50 10 5 1['MDCLXVI'¼X]
|
195. |
Removing elements Y from end of vector X
|
XA1; YA
|
|
(IO-(~²X¹Y)¼1)X
|
196. |
Removing trailing blanks |
XC1 |
|
(1-(²' '¬X)¼1)X
|
198. |
Index of last occurrence of Y in X (IO-1 if not found)
|
XA1; YA
|
|
(¯1 1[2×IO]+½X)-(²X)¼Y
|
199. |
Index of last occurrence of Y in X (0 if not found)
|
XA1; YA
|
|
(1+½X)-(²X)¼Y |
200. |
Index of last occurrence of Y in X, counted from the rear
|
XA1; YA
|
|
(²X)¼Y |
201. |
Index of first occurrence of G in X (circularly) after Y
|
XA1; YI0; GA
|
|
IO+(½X)|Y+(Y²X)¼G
|
202. |
Alphabetizing X; equal alphabets in same column of Y
|
YC2; XC
|
|
(¯1½Y)|(,Y)¼X
|
203. |
Changing index of an unfound element to zero
|
YA1; XA
|
|
(1+½Y)|Y¼X |
204. |
Replacing elements of G in set X with corresponding Y
|
XA1, YA1, GA
|
|
(½G)½A A[B/¼½B]Y[(BB½Y)/BX¼A,G]
|
205. |
Removing duplicate elements (nub)
|
XA1 |
|
((X¼X)=¼½X)/X |
206. |
First word in X |
XC1 |
|
(¯1+X¼' ')X |
207. |
Removing elements Y from beginning of vector X
|
XA1; YA
|
|
(((~X¹Y)¼1)-IO)X
|
208. |
Removing leading zeroes |
XA1 |
|
(¯1+(X='0')¼0)X
|
209. |
Index of first one after index Y in X
|
GI0; XB1
|
|
Y+(YX)¼1 |
210. |
Changing index of an unfound element to zero (not effective)
|
XA; YA1
|
|
(X¹Y)×Y¼X |
211. |
Indicator of first occurrence of each unique element of X
|
XA1 |
|
(X¼X)=¼½X |
212. |
Inverting a permutation |
XI1 |
|
X¼¼½X |
213. |
Index of first differing element in vectors X and Y
|
XA1; YA1
|
|
(Y¬X)¼1 |
214. |
Which elements of X are not in set Y (difference of sets)
|
XA; YA1
|
|
(IO+½Y)=Y¼X |
215. |
Changing numeric code X into corresponding name in Y
|
XD; YD1; GC2
|
|
G[Y¼X;] |
216. |
Index of key Y in key vector X
|
XA1; YA
|
|
X¼Y |
217. |
Conversion from characters to numeric codes
|
XA |
|
AV¼X |
218. |
Index of first satisfied condition in X
|
XB1 |
|
X¼1 |
OUTER PRODUCT °.! °. °.|
|
219. |
Pascal's triangle of order X (binomial coefficients)
|
XI0 |
|
³A°.!A0,¼X |
220. |
Maximum table |
XI0 |
|
(¼X)°.¼X |
221. |
Number of decimals (up to Y) of elements of X
|
XD; YI0
|
|
0+.¬((10*Y)×10*IO-¼Y+1)°.|X×10*Y
|
222. |
Greatest common divisor of elements of X
|
XI1 |
|
/(^/0=A°.|X)/A¼/X
|
223. |
Divisibility table |
XI1 |
|
0=(¼/X)°.|X |
224. |
All primes up to X |
XI0 |
|
(2=+0=(¼X)°.|¼X)/¼X
|
OUTER PRODUCT °.* °.× °.- °.+
|
225. |
Compound interest for principals Y at rates G % in times X
|
XD; YD; GD
|
|
Y°.×(1+G÷100)°.*X |
226. |
Product of two polynomials with coefficients X and Y
|
XD1; YD1
|
|
+(IO-¼½X)²X°.×Y,0×1X
|
228. |
Shur product |
XD2; YD2
|
|
1 2 1 2³X°.×Y |
229. |
Direct matrix product |
XD2; YD2
|
|
1 3 2 4³X°.×Y |
230. |
Multiplication table |
XI0 |
|
(¼X)°.×¼X |
231. |
Replicating a dimension of rank three array X Y-fold
|
YI0; XA3
|
|
X[;,(Y½1)°.×¼(½X)[2];]
|
232. |
Array and its negative ('plus minus')
|
XD |
|
X°.×1 ¯1 |
233. |
Move set of points X into first quadrant
|
XD2 |
|
1 2 1³X°.-/X
|
234. |
Test relations of elements of X to range Y; result in ¯2..2
|
XD; YD; 2=¯1½Y
|
|
+/×X°.-Y |
235. |
Occurrences of string X in string Y
|
XA1; YA1
|
|
(Y[A°.+¯1+¼½X]^.=X)/A(A=1X)/¼½A(1-½X)Y
|
236. |
Sum of common parts of matrices (matrix sum)
|
XD2; YD2
|
|
1 2 1 2³X°.+Y |
237. |
Adding X to each column of Y |
XD1; YD2
|
|
1 1 2³X°.+Y |
238. |
Adding X to each column of Y |
XD1; YD2
|
|
1 2 1³Y°.+X |
240. |
Adding X to each row of Y |
XD1; YD2
|
|
2 1 2³X°.+Y |
241. |
Adding X to each row of Y |
XD1; YD2
|
|
1 2 2³Y°.+X |
242. |
Hilbert matrix of order X |
X¼0 |
|
÷¯1+(¼X)°.+¼X |
243. |
Moving index of width Y for vector X
|
XA1; YI0
|
|
(0,¼(½X)-Y)°.+Y |
244. |
Indices of subvectors of length Y starting at X+1
|
XI1; YI0
|
|
X°.+¼Y |
245. |
Reshaping numeric vector X into a one-column matrix
|
XD1 |
|
X°.+,0 |
246. |
Annuity coefficient: X periods at interest rate Y %
|
XI; YD
|
|
((½A)½Y÷100)÷A³1-(1+Y÷100)°.*-X
|
OUTER PRODUCT °.<°.ˆ °.‰ °.>
|
247. |
Matrix with X[i] trailing zeroes on row i
|
XI1 |
|
X°.<²¼—/x |
248. |
Matrix with X[i] leading zeroes on row i
|
XI1 |
|
X°.<¼—/x |
249. |
Distribution of X into intervals between Y
|
XD; YD1
|
|
+/((¯1Y)°.X)^(1Y)°.>X
|
250. |
Histogram (distribution barchart; down the page)
|
XI1 |
|
'
'[IO+(²¼/A)°.A+/(¼1+(/X)-/X)°.=X]
|
251. |
Barchart of integer values (down the page)
|
XI1 |
|
' '[IO+(²¼/X)°.X]
|
252. |
Test if X is an upper triangular matrix
|
XD2 |
|
^/,(0¬X)A°.A¼1½X
|
253. |
Number of ?s intersecting ?s (X=starts, Y=stops)
|
XD1; YD1
|
|
+/A^³AX°.Y
|
254. |
Contour levels Y at points with altitudes X
|
XD0; YD1
|
|
Y[+Y°.X]
|
255. |
X×X upper triangular matrix |
XI0 |
|
(¼X)°.¼X |
256. |
Classification of elements Y into X classes of equal size
|
XI0; YD1
|
|
+/(A×X÷/AY-/Y)°.¯1+¼X
|
257. |
Matrix with X[i] trailing ones on row i
|
XI1 |
|
X°.²¼/X
|
258. |
Comparison table |
XI1 |
|
X°.¼/X,0
|
259. |
Barchart of X with height Y (across the page)
|
XD1; YD0
|
|
' '[IO+X°.(/X)×(¼Y)÷Y]
|
260. |
Barchart of integer values (across the page)
|
XI1 |
|
' '[IO+X°.¼/X]
|
261. |
Matrix with X[i] leading ones on row i
|
XI1 |
|
X°.¼/X
|
263. |
Test if X is a lower triangular matrix
|
XD2 |
|
^/,(0¬X)A°.A¼1½X
|
264. |
Test if X is within range [ Y[1],Y[2] )
|
XD; YD1
|
|
¬/X°.Y |
265. |
Ordinal numbers of words in X that indices Y point to
|
XC1; YI
|
|
IO++/Y°.(' '=X)/¼½X
|
266. |
Which class do elements of X belong to
|
XD |
|
+/X°.0 50 100 1000
|
267. |
X×X lower triangular matrix |
XI0 |
|
(¼X)°.¼X |
268. |
Moving all blanks to end of each row
|
XC |
|
(½X)½(,(+/A)°.>-IO-¼¯1½X)\(,AX¬' ')/,X
|
269. |
Justifying right fields of X (lengths Y) to length G
|
XA1; YI1; GI0
|
|
(,Y°.>²(¼G)-IO)\X
|
270. |
Justifying left fields of X (lengths Y) to length G
|
XA1; YI1; GI0
|
|
(,Y°.>(¼G)-IO)\X
|
OUTER PRODUCT °.¬ °.=
|
271. |
Indices of elements of Y in corr. rows of X (X[i;]¼Y[i;])
|
XA2; YA2
|
|
1++/^\1 2 1 3³Y°.¬X
|
273. |
Indicating equal elements of X as a logical matrix
|
XA1 |
|
³X°.=(1 1³<\x°.=x)/x
|
275. |
Changing connection matrix X (¯1
1) to a node matrix
|
XI2 |
|
(1 ¯1°.=³X)+.×¼1½X
|
276. |
Sums according to codes G |
XA; YD; GA
|
|
(G°.=X)+.×Y |
277. |
Removing duplicate elements (nub)
|
XA1 |
|
(1 1³<\x°.=x)/x |
278. |
Changing node matrix X (starts,ends) to a connection matrix
|
XI2 |
|
-/(¼/,X)°.=³X
|
279. |
Test if all elements of vector X are equal
|
XB1 |
|
/^/0 1°.=X |
280. |
Test if elements of X belong to corr. row of Y (X[i;]¹Y[i;])
|
XA2; YA2; 1½X
1½Y
|
|
/1 2 1 3³X°.=Y
|
281. |
Test if X is a permutation vector
|
XI1 |
|
^/1=+/X°.=¼½X |
282. |
Occurrences of string X in string Y
|
XC1; YC1
|
|
(^(¯1+¼½X)²(X°.=Y),0)/¼1+½Y
|
283. |
Division to Y classes with width H, minimum G
|
XD; YI0; GD0; HD0
|
|
+/(¼Y)°.=(X-G)÷H
|
285. |
Repeat matrix |
XA1; YA1
|
|
(((¯1²~A)^A(¯1X=1²X),0)/Y)°.=Y
|
286. |
X×X identity matrix |
XI0 |
|
(¼X)°.=¼X |
INNER PRODUCT .× .× .+ ×.± ×.* +.*
|
287. |
Maxima of elements of subsets of X specified by Y
|
XA1; YB
|
|
A+(X-A/X).×Y
|
288. |
Indices of last non-blanks in rows
|
XC |
|
(' '¬X).×¼¯1½X
|
289. |
Maximum of X with weights Y |
XD1; YD1
|
|
Y.×X |
290. |
Minimum of X with weights Y |
XD1; YD1
|
|
Y.×X |
292. |
Extending a distance table to next leg
|
XD2 |
|
XX.+X |
293. |
A way to combine trigonometric functions (sin X cos Y)
|
XD0; YD0
|
|
1 2×.±X,Y |
294. |
Sine of a complex number |
XD; 2=1½X
|
|
(2 2½1 6 2 5)×.±X |
295. |
Products over subsets of X specified by Y
|
XA1; YB
|
|
X×.*Y |
296. |
Sum of squares of X |
XD1 |
|
X+.*2 |
297. |
Randomizing random numbers (in LX in a workspace)
|
|
|
RLTS+.*2
|
INNER PRODUCT .^ <.< <.ˆ <.‰ ˆ.‰>.>
|
298. |
Extending a transitive binary relation
|
XB2 |
|
XX.^X |
299. |
Test if X is within range [ Y[1;],Y[2;] )
|
XD0; YD2; 1½Y
2
|
|
X<. |
300. |
Test if X is within range ( Y[1;],Y[2;] ]
|
XD0; YD2; 1½Y
2
|
|
X<.ˆy |
301. |
Test if X is within range ( Y[1;],Y[2;] ]
|
XD; YD2; 1½Y
2
|
|
X<.ˆy |
302. |
Test if the elements of X are ascending
|
XD1 |
|
X<.‰1²x |
303. |
Test if X is an integer within range [ G,H )
|
XI0; GI0; HI0
|
|
~X.(X),G,H
|
304. |
Test if X is within range ( Y[1;],Y[2;] ]
|
XD; YD2; 1½Y
2
|
|
(X,[.1+½½X]X)>.>Y
|
INNER PRODUCT .¬ ^.= +.¬ +.=
|
306. |
Removing trailing blank columns
|
XC2 |
|
(²\²' '.¬X)/X
|
307. |
Removing leading blank rows |
XC2 |
|
(\X.¬' ')X
|
308. |
Removing leading blank columns
|
XC2 |
|
(\' '.¬X)/X
|
309. |
Index of first occurrences of rows of X as rows of Y
|
XA, YA2
|
|
IO++^Y.¬³X
|
310. |
'X¼Y' for rows of matrices |
XA2; YA2
|
|
IO++^X.¬³Y
|
311. |
Removing duplicate blank rows |
XC2 |
|
(A11²1,AX.¬' ')X
|
312. |
Removing duplicate blank columns
|
XC2 |
|
(A1,¯1A' '.¬X)/X
|
313. |
Removing blank columns |
XC2 |
|
(' '.¬X)/X |
314. |
Removing blank rows |
XC2 |
|
(X.¬' ')X
|
315. |
Test if rows of X contain elements differing from Y
|
XA; YA0
|
|
X.¬Y |
316. |
Removing trailing blank rows |
XC2 |
|
(-2+/^\²X^.=' ')X
|
317. |
Removing duplicate rows |
XA2 |
|
(<\x^.=³x)šx
|
318. |
Removing duplicate rows |
XA2 |
|
(1 1³<\x^.=³x)šx |
319. |
Test if circular lists are equal (excluding phase)
|
XA1; YA1
|
|
/Y^.=³(¼½X)²(2½½X)½X
|
320. |
Test if all elements of vector X are equal
|
XB1 |
|
X^.=/X |
321. |
Test if all elements of vector X are equal
|
XB1 |
|
X^.=^/X |
322. |
Rows of matrix X starting with string Y
|
XA2; YA1
|
|
((((1½X),½Y)X)^.=Y)X
|
323. |
Occurrences of string X in string Y
|
XA1; YA1
|
|
((-A)X^.=(A,1+½Y)½Y)/¼(½Y)+1-A½X
|
324. |
Test if vector Y is a row of array X
|
XA; YA1
|
|
1¹X^.=Y |
325. |
Comparing vector Y with rows of array X
|
XA; YA1
|
|
X^.=Y |
326. |
Word lengths of words in list X
|
XC |
|
X+.¬' ' |
327. |
Number of occurrences of scalar X in array Y
|
XA0; YA
|
|
X+.=,Y |
328. |
Counting pairwise matches (equal elements) in two vectors
|
XA1; YA1
|
|
X+.=Y |
INNER PRODUCT -.÷ +.÷ +.×
|
329. |
Sum of alternating reciprocal series Y÷X
|
XD1; YD1
|
|
Y-.÷X |
330. |
Limits X to fit in field Y[1 2]
|
XD; YI1
|
|
(X1A)1A(2 2½¯1 1 1
¯.1)+.×10*(-1Y),-/Y+Y>99 0 |
331. |
Value of polynomial with coefficients Y at point X
|
XD0; YD
|
|
(X*¯1+¼½Y)+.ײY |
332. |
Arithmetic average (mean value) of X weighted by Y
|
XD1; YD1
|
|
(Y+.×X)÷½X |
333. |
Scalar (dot) product of vectors
|
XD1; YD1
|
|
Y+.×X |
334. |
Sum of squares of X |
XD1 |
|
X+.×X |
335. |
Summation over subsets of X specified by Y
|
XA1; YB
|
|
X+.×Y |
336. |
Matrix product |
XD; YD; ¯1½X
1½Y
|
|
X+.×Y |
337. |
Sum of reciprocal series Y÷X |
XD1; YD1
|
|
Y+.÷X |
SCAN \ \ ×\ -\
|
338. |
Groups of ones in Y pointed to by X (or trailing parts)
|
XB; YB
|
|
Y^A=\X×A+\Y>¯10,Y
|
339. |
Test if X is in ascending order along direction Y
|
XD; YI0
|
|
^/[Y]X=\[Y]X
|
340. |
Duplicating element of X belonging to Y,1X until next found
|
XA1; YB1
|
|
X[1\Y×¼½Y]
|
341. |
Test if X is in descending order along direction Y
|
XD; YI0
|
|
^/[Y]X=\[Y]X
|
342. |
Value of Taylor series with coefficients Y at point X
|
XD0; YD1
|
|
+/Y××\1,X÷¼¯1+½Y |
343. |
Alternating series (1 ¯1 2 ¯2 3 ¯3 ...)
|
XI0 |
|
-\¼X |
SCAN \ <\ ˆ\ ¬\
|
346. |
Value of saddle point |
XD2 |
|
(<\,(x=(½x)½—šx)^x=³(²½x)½˜/x)/,x
|
348. |
First one (turn off all ones after first one)
|
XB |
|
<\x |
350. |
Not first zero (turn on all zeroes after first zero)
|
XB |
|
\X |
351. |
Running parity (¬\) over subvectors of Y indicated by X
|
XB1; YB1
|
|
¬\Y¬X\A¬¯10,AX/¬\¯10,Y
|
352. |
Vector (X[1]½1),(X[2]½0),(X[3]½1),...
|
XI1; ^/0 |
|
¬\(¼+/X)¹+\IO,X
|
353. |
Not leading zeroes(\) in each subvector of Y indicated by X
|
XB1; YB1
|
|
¬\(YX)\A¬¯10,A(YX)/Y
|
354. |
Leading ones (^\) in each subvector of Y indicated by X
|
XB1; YB1
|
|
~¬\(YX)\A¬¯10,A~(YX)/Y
|
355. |
Locations of texts between and including quotes
|
XC1 |
|
A¯10,A¬\X=''''
|
356. |
Locations of texts between quotes
|
XC1 |
|
A^¯10,A¬\X=''''
|
357. |
Joining pairs of ones |
XB |
|
X¬\X |
358. |
Places between pairs of ones |
XB |
|
(~X)^¬\X |
359. |
Running parity |
XB |
|
¬\X |
SCAN \ ^\ |
360. |
Removing leading and trailing blanks
|
XC1 |
|
((²\²A)^\A' '¬X)/X
|
361. |
First group of ones |
XB |
|
X^^\X=\X |
362. |
Removing trailing blank columns
|
XC2 |
|
(²\²' '¬X)/X
|
363. |
Removing trailing blanks |
XC1 |
|
(²\²' '¬X)/X
|
364. |
Removing leading blanks |
XC1 |
|
(\' '¬X)/X |
365. |
Not leading zeroes (turn on all zeroes after first one)
|
XB |
|
\X |
366. |
Centering character array X with ragged edges
|
XC |
|
(A-0.5×(A+/^\²A)++/^\A' '=²X)²X
|
367. |
Decommenting a matrix representation of a function (CR)
|
XC2 |
|
(/A)(½X)½(,A)\(,A^\('©'¬X)¬\X='''')/,X
|
369. |
Centering character array X with only right edge ragged
|
XC |
|
(-0.5×+/^\' '=²X)²X
|
370. |
Justifying right |
XC |
|
(-+/^\²' '=X)²X |
371. |
Removing trailing blanks |
XC1 |
|
(-+/^\²' '=X)X
|
372. |
Justifying left |
XC |
|
(+/^\' '=X)²X |
373. |
Editing X with Y -wise |
XC1; YC1
|
|
((~(½AX)'/'=Y)/AX),(1AY),(A+/^\Y¬',')X
|
374. |
Removing leading blanks |
XC1 |
|
(+/^\' '=X)X
|
375. |
Indices of first blanks in rows of array X
|
XC |
|
IO++/^\' '¬X
|
377. |
Leading ones (turn off all ones after first zero)
|
XB |
|
^\X |
SCAN +\ |
378. |
Vector (X[1]½1),(Y[1]½0),(X[2]½1),...
|
QI1; YI1
|
|
(¼+/X,Y)¹+\1+¯10,((¼+/X)¹+\X)\Y
|
379. |
Replicate Y[i] X[i] times (for all i)
|
XI1; YA1
|
|
((X¬0)/Y)[+\¯1²(¼+/X)¹+\X]
|
380. |
Vector (Y[1]+¼X[1]),(Y[2]+¼X[2]),(Y[3]+¼X[3]),...
|
XI1; YI1; ½X
½Y
|
|
IO++\1+((¼+/X)¹+\IO,X)\Y-¯11,X+Y
|
381. |
Replicate Y[i] X[i] times (for all i)
|
XI1; YA1; ^/0 |
|
Y[+\(¼+/X)¹¯11++\0,X]
|
382. |
Replicate Y[i] X[i] times (for all i)
|
XI1; YA1; ^/0 |
|
Y[IO++\(¼+/X)¹IO++\X]
|
383. |
Cumulative sums (+\) over subvectors of Y indicated by X
|
XB1; YD1
|
|
+\Y-X\A-¯10,AX/+\¯10,Y
|
384. |
Sums over (+/) subvectors of Y, lengths in X
|
XI1; YD1
|
|
A-¯10,A(+\Y)[+\X]
|
386. |
X first figurate numbers |
XI0 |
|
+\+\¼X |
387. |
Insert vector for X[i] zeroes after i:th subvector
|
XI1; YB1
|
|
(¼(½Y)++/X)¹+\1+¯10,(1²Y)\X
|
388. |
Open a gap of X[i] after Y[G[i]] (for all i)
|
XI1; YA1; GI1
|
|
((¼(½Y)++/X)¹+\1+¯10,((¼½Y)¹G)\X)\Y
|
389. |
Open a gap of X[i] before Y[G[i]] (for all i)
|
XI1; YA1; GI1
|
|
((¼(½Y)++/X)¹+\1+((¼½Y)¹G)\X)\Y
|
390. |
Changing lengths X of subvectors to starting indicators
|
XI1 |
|
A A[+\¯1IO,X]1 A(+/X)½0
|
391. |
Changing lengths X of subvectors to ending indicators
|
XI1 |
|
(¼+/X)¹(+\X)-~IO
|
392. |
Changing lengths X of subvectors to starting indicators
|
XI1 |
|
(¼+/X)¹+\IO,X
|
393. |
Insert vector for X[i] elements before i:th element
|
XI1 |
|
(¼+/A)¹+\A1+X
|
394. |
Sums over (+/) subvectors of Y indicated by X
|
XB1; YD1
|
|
A-¯10,A(1²X)/+\Y
|
395. |
Fifo stock Y decremented with X units
|
YD1; XD0
|
|
G-¯10,G0(+\Y)-X
|
396. |
Locations of texts between and including quotes
|
XC1 |
|
A¯10,A2|+\X=''''
|
397. |
Locations of texts between quotes
|
XC1 |
|
A^¯10,A2|+\X=''''
|
398. |
X:th subvector of Y (subvectors separated by Y[1])
|
YA1; XI0
|
|
1(X=+\Y=1Y)/Y
|
399. |
Locating field number Y starting with first element of X
|
YI0; XC1
|
|
(Y=+\X=1X)/X
|
400. |
Sum elements of X marked by succeeding identicals in Y
|
XD1; YD1
|
|
A-¯10,A(Y¬1Y,0)/+\X
|
401. |
Groups of ones in Y pointed to by X
|
XB1; YB1
|
|
Y^A¹(X^Y)/A+\Y>¯10,Y
|
402. |
ith starting indicators X |
XB1; YB1
|
|
(+\X)¹Y/¼½Y |
403. |
G:th subvector of Y (subvectors indicated by X)
|
XB1; YA1; GI0
|
|
(G=+\X)/Y |
404. |
Running sum of Y consecutive elements of X
|
XD1; YI0
|
|
((Y-1)A)-0,(-Y)A+\X
|
405. |
Depth of parentheses |
XC1 |
|
+\('('=X)-¯10,')'=X
|
406. |
Starting positions of subvectors having lengths X
|
XI1 |
|
+\¯1IO,X
|
407. |
Changing lengths X of subvectors of Y to ending indicators
|
XI1 |
|
(¼½Y)¹(+\X)-~IO
|
408. |
Changing lengths X of subvectors of Y to starting indicators
|
XI1 |
|
(¼½Y)¹+\IO,X
|
409. |
X first triangular numbers |
XI0 |
|
+\¼X |
410. |
Cumulative sum |
XD |
|
+\X |
REDUCTION ±/ ÷/ -/ ×/
|
411. |
Complementary angle (arccos sin X)
|
XD0 |
|
±/¯2 1,X |
412. |
Evaluating a two-row determinant
|
XD2 |
|
-/×/0 1´X |
413. |
Evaluating a two-row determinant
|
XD2 |
|
-/×0 1²X |
414. |
Area of triangle with side lengths in X (Heron's formula)
|
XD1; 3
½X
|
|
(×/(+/X÷2)-0,X)*.5
|
415. |
Juxtapositioning planes of rank 3 array X
|
XA3 |
|
(×2 2½1,½X)½2 1 3³X
|
416. |
Number of rows in array X (also of a vector)
|
XA |
|
×/¯1½X |
417. |
(Real) solution of quadratic equation with coefficients X
|
XD1; 3
½X
|
|
(-X[2]-¯1 1×((X[2]*2)-×/4,X[1 3])*.5)÷2×X[1]
|
418. |
Reshaping planes of rank 3 array to rows of a matrix
|
XA3 |
|
(×/2 2½1,½X)½X |
419. |
Reshaping planes of rank 3 array to a matrix
|
XA3 |
|
(×/2 2½(½X),1)½X |
420. |
Number of elements (also of a scalar)
|
XA |
|
×/½X |
421. |
Product of elements of X |
XD1 |
|
×/X |
422. |
Alternating product |
XD |
|
÷/X |
423. |
Centering text line X into a field of width Y
|
XC1; YI0
|
|
Y((-/.5×Y,½X)½' '),X
|
424. |
Alternating sum |
XD |
|
-/X |
REDUCTION / /
|
425. |
Test if all elements of vector X are equal
|
XD1 |
|
(/X)=/X
|
426. |
Size of range of elements of X
|
XD1 |
|
(/X)-/X
|
427. |
Conversion of set of positive integers X to a mask
|
XI1 |
|
(¼/X)¹X |
428. |
Negative infinity; the smallest representable value
|
|
|
/¼0 |
429. |
Vectors as column matrices in catenation beneath each other
|
XA1/2; YA1/2
|
|
X,[1+.5×/(½½X),½½Y]Y
|
430. |
Vectors as row matrices in catenation upon each other
|
XA1/2; YA1/2
|
|
X,[.5×/(½½X),½½Y]Y
|
431. |
Quick membership (¹) for positive integers
|
XI1; YI1
|
|
A[X] A[Y]1 A(/X,Y)½0
|
432. |
Positive maximum, at least zero (also for empty X)
|
XD1 |
|
/X,0 |
433. |
Maximum of elements of X |
XD1 |
|
/X |
434. |
Positive infinity; the largest representable value
|
|
|
/¼0 |
435. |
Minimum of elements of X |
XD1 |
|
/X |
REDUCTION / / ¬/
|
436. |
Test if all elements of vector X are equal
|
XB1 |
|
/0 1¹X |
437. |
Test if all elements of vector X are equal
|
XB1 |
|
(^/X)~/X
|
438. |
Test if all elements of vector X are equal
|
XB1 |
|
(^/X)=/X |
439. |
Test if all elements of vector X are equal
|
XB1 |
|
^/X÷/X |
440. |
Removing duplicate rows from ordered matrix X
|
XA2 |
|
(¯1²1(/X¬¯1´X),1)X
|
441. |
Vector having as many ones as X has rows
|
XA2 |
|
/0/X |
442. |
Test if X and Y have elements in common
|
XA; YA1
|
|
/Y¹X |
443. |
None, neither |
XB |
|
~/X |
444. |
Any, anyone |
XB |
|
/X |
445. |
Test if all elements of vector X are equal
|
XB1 |
|
¬/0 1¹X |
446. |
Parity |
XB |
|
¬/X |
REDUCTION ^/ |
447. |
Number of areas intersecting areas in X
|
XD3 (n × 2 × dim)
|
|
+/A^³A^/X[;A½1;]2 1 3³X[;(A1½X)½2;]
|
448. |
Test if all elements of vector X are equal
|
XB1 |
|
^/X/1²X |
449. |
Comparison of successive rows |
XA2 |
|
^/X=1´X |
450. |
Test if all elements of vector X are equal
|
XA1 |
|
^/X=1²X |
451. |
Test if X is a valid APL name |
XC1 |
|
^/((1X)¹10A),X¹A'0..9A..Za..x'
|
452. |
Test if all elements of vector X are equal
|
XA1 |
|
^/X=1X |
453. |
Identity of two sets |
XA1; YA1
|
|
^/(X¹Y),Y¹X |
454. |
Test if X is a permutation vector
|
XI1 |
|
^/(¼½X)¹X |
455. |
Test if all elements of vector X are equal
|
XB1 |
|
~^/X¹~X |
456. |
Test if X is boolean |
XA |
|
^/,X¹0 1 |
457. |
Test if Y is a subset of X (Y X)
|
XA; YA1
|
|
^/Y¹X |
458. |
Test if arrays of equal shape are identical
|
XA; YA; ½X
½Y
|
|
^/,X=Y |
459. |
Test if all elements of vector X are equal
|
XA1 |
|
^/X=X[1] |
460. |
Blank rows |
XC2 |
|
^/' '=X |
461. |
All, both |
XB |
|
^/X |
REDUCTION +/ |
462. |
Standard deviation of X |
XD1 |
|
((+/(X-(+/X)÷½X)*2)÷½X)*.5
|
463. |
Y:th moment of X |
XD1 |
|
(+/(X-(+/X)÷½X)*Y)÷½X
|
464. |
Variance (dispersion) of X |
XD1 |
|
(+/(X-(+/X)÷½X)*2)÷½X
|
465. |
Arithmetic average (mean value), also for an empty array
|
XD |
|
(+/,X)÷1½,X |
466. |
Test if all elements of vector X are equal
|
XB1 |
|
0=(½X)|+/X |
467. |
Average (mean value) of columns of matrix X
|
XD2 |
|
(+X)÷1(½X),1
|
468. |
Average (mean value) of rows of matrix X
|
XD2 |
|
(+/X)÷¯11,½X
|
469. |
Number of occurrences of scalar X in array Y
|
XA0; YA
|
|
+/X=,Y |
470. |
Average (mean value) of elements of X along direction Y
|
XD; YI0
|
|
(+/[Y]X)÷(½X)[Y] |
471. |
Arithmetic average (mean value)
|
XD1 |
|
(+/X)÷½X |
472. |
Resistance of parallel resistors
|
XD1 |
|
÷+/÷X |
473. |
Sum of elements of X |
XD1 |
|
+/X |
474. |
Row sum of a matrix |
XD2 |
|
+/X |
475. |
Column sum of a matrix |
XD2 |
|
+X |
476. |
Reshaping one-element vector X into a scalar
|
XA1 |
|
+/X |
477. |
Number of elements satisfying condition X
|
XB1 |
|
+/X |
REVERSE ² ´ |
478. |
Scan from end with function ¸ |
XA |
|
²¸\²X |
479. |
The index of positive integers in Y
|
XI; YI1
|
|
A[X] A[²Y]²¼½Y A9999½IO+½Y
|
480. |
'Transpose' of matrix X with column fields of width Y
|
XA2; GI0
|
|
((²A)×1,Y)½2 1 3³(1²Y,A(½X)÷1,Y)½X
|
482. |
Adding X to each column of Y |
XD1; YD; (½X)=1½Y
|
|
Y+³(²½Y)½X |
483. |
Matrix with shape of Y and X as its columns
|
XA1; YA2
|
|
³(²½Y)½X |
484. |
Derivate of polynomial X |
XD1 |
|
¯1Xײ¯1+¼½X |
485. |
Reverse vector X on condition Y
|
XA1; YB0
|
|
,²[IO+Y](1,½X)½X
|
486. |
Reshaping vector X into a one-column matrix
|
XA1 |
|
(²1,½X)½X |
487. |
Avoiding parentheses with help of reversal
|
|
|
(²1, ...) |
ROTATE ² ´ |
488. |
Vector (cross) product of vectors
|
XD; YD
|
|
((1²X)ׯ1²Y)-(¯1²X)×1²Y
|
489. |
A magic square, side X |
XI0; 1=2|X
|
|
A´(A(¼X)-X÷2)²(X,X)½¼X×X
|
490. |
Removing duplicates from an ordered vector
|
XA1 |
|
(¯1²1(X¬¯1²X),1)/X
|
491. |
An expression giving itself |
|
|
1²22½11½'''1²22½11½'''
|
492. |
Transpose matrix X on condition Y
|
XA2; YB0
|
|
(Y²1 2)³X |
493. |
Any element true (/) on each subvector of Y indicated by X
|
XB1; YB1
|
|
(X/Y)A/1²A(YX)/X
|
494. |
All elements true (^/) on each subvector of Y indicated by X
|
XB1; YB1
|
|
(X/Y)^A/1²A(YX)/X
|
495. |
Removing leading, multiple and trailing Y's
|
XA1; YA0
|
|
(1A)(A1²AY=X)/X
|
496. |
Changing starting indicators X of subvectors to lengths
|
XB1 |
|
A-¯10,A(1²X)/¼½X
|
498. |
(Cyclic) compression of successive blanks
|
XC1 |
|
(A1²AX¬' ')/X
|
499. |
Aligning columns of matrix X to diagonals
|
XA2 |
|
(1-¼¯1½X)²X |
500. |
Aligning diagonals of matrix X to columns
|
XA2 |
|
(¯1+¼¯1½X)²X
|
501. |
Diagonal matrix with elements of X
|
XD1 |
|
0 ¯1(-¼½X)²((2½½X)½0),X
|
502. |
Test if elements differ from previous ones (non-empty X)
|
XA1 |
|
1,1X¬¯1²X |
503. |
Test if elements differ from next ones (non-empty X)
|
XA1 |
|
(¯1X¬1²X),1 |
504. |
Replacing first element of X with Y
|
XA1; YA0
|
|
¯1²1X,Y |
505. |
Replacing last element of X with Y
|
XA1; YA0
|
|
1²¯1Y,X |
506. |
Ending points for X in indices pointed by Y
|
XA1; YI1
|
|
1²(¼½X)¹Y |
507. |
Leftmost neighboring elements cyclically
|
XA |
|
¯1²X |
508. |
Rightmost neighboring elements cyclically
|
XA |
|
1²X |
TRANSPOSE ³ |
509. |
Applying to columns action defined on rows
|
XA1; YI0
|
|
³ ... ³X |
510. |
Retrieving scattered elements Y from matrix X
|
XA2; YI2
|
|
1 1³X[Y[1;];Y[2;]]
|
511. |
Successive transposes of G (X after Y: X³Y³G)
|
XI1; YI1
|
|
X[Y]³G |
512. |
Major diagonal of array X |
XA |
|
(1*½X)³X |
513. |
Reshaping a 400×12 character matrix to fit into one page
|
XC2 |
|
40 120½2 1 3³10 40 12½X
|
514. |
Transpose of planes of a rank three array
|
XA3 |
|
1 3 2³X |
515. |
Major diagonal of matrix X |
XA2 |
|
1 1³X |
516. |
Selecting specific elements from a 'large' outer product
|
XA; YA; GI1
|
|
G³X°.¸Y |
517. |
Test for antisymmetricity of square matrix X
|
XD2 |
|
~0¹X=-³X |
518. |
Test for symmetricity of square matrix X
|
XA2 |
|
~0¹X=³X |
519. |
Matrix with X columns Y |
XI0; YD1
|
|
³(X,½Y)½Y |
MAXIMUM MINIMUM
|
520. |
Limiting X between Y[1] and Y[2], inclusive
|
XD; YD1
|
|
Y[1]Y[2]X
|
521. |
Inserting vector Y to the end of matrix X
|
XA2; YA1
|
|
(AX),[¼1](1A(½X)0,½Y)Y
|
522. |
Widening matrix X to be compatible with Y
|
XA2; YA2
|
|
((0 1×½Y)½X)X
|
523. |
Lengthening matrix X to be compatible with Y
|
XA2; YA2
|
|
((1 0×½Y)½X)X
|
524. |
Reshaping non-empty lower-rank array X into a matrix
|
XA; 2½½X
|
|
(1¯2½X)½X
|
525. |
Take of at most X elements from Y
|
XI; YA
|
|
(X½Y)Y
|
526. |
Limiting indices and giving a default value G
|
XA1; YI; GA0
|
|
(X,G)[(1+½X)Y]
|
CEILING FLOOR
|
527. |
Reshaping X into a matrix of width Y
|
XD, YI0
|
|
(((½,X)÷Y),Y)½X
|
528. |
Rounding to nearest even integer
|
XD |
|
X+12|X
|
529. |
Rounding, to nearest even integer for .5 = 1||X
|
XD |
|
X+.5×.5¬2|X |
530. |
Rounding, to nearest even integer for .5 = 1||X
|
XD |
|
X+.5×.5¬2|X |
531. |
Arithmetic progression from X to Y with step G
|
XD0; YD0; GD0
|
|
X+(G××Y-X)×(¼1+|(Y-X)÷G)-IO
|
532. |
Centering text line X into a field of width Y
|
XC1; YI0
|
|
(-.5×Y+½X)X
|
533. |
Test if integer |
XD |
|
X=X |
534. |
Rounding currencies to nearest 5 subunits
|
XD |
|
.05×.5+X÷.05
|
535. |
First part of numeric code ABBB
|
XI |
|
X÷1000 |
536. |
Rounding to X decimals |
XI; YD
|
|
(10*-X)×0.5+Y×10*X
|
537. |
Rounding to nearest hundredth |
XD |
|
0.01×0.5+100×X
|
538. |
Rounding to nearest integer |
XD |
|
0.5+X |
539. |
Demote floating point representations to integers
|
XI |
|
X |
RESIDUE | |
540. |
Test if X is a leap year |
XI |
|
(0=400|X)(0¬100|X)^0=4|X
|
541. |
Framing |
XC2 |
|
'_',[1]('|',X,'|'),[1]'¯'
|
542. |
Magnitude of fractional part |
XD |
|
1||X |
543. |
Fractional part with sign |
XD |
|
(×X)|X |
544. |
Increasing the dimension of X to multiple of Y
|
XA1; YI0
|
|
X,(Y|-½X)0/X
|
545. |
Removing every Y:th element of X
|
XA1; YI0
|
|
(0¬Y|¼½X)/X |
546. |
Taking every Y:th element of X
|
XA1; YI0
|
|
(0=Y|¼½X)/X |
547. |
Divisors of X |
XI0 |
|
(0=A|X)/A¼X |
548. |
Removing every second element of X
|
XA1 |
|
(2|¼½X)/X |
549. |
Elements of X divisible by Y |
XD1; YD0/1
|
|
(0=Y|X)/X |
550. |
Ravel of a matrix to Y[1] columns with a gap of Y[2]
|
XA2; YI1
|
|
(A×Y[1]*¯1 1)½(A(½X)+(Y[1]|-1½X),Y[2])X
|
551. |
Test if even |
XI |
|
~2|X |
552. |
Last part of numeric code ABBB
|
XI |
|
1000|X |
553. |
Fractional part |
XD |
|
1|X |
MAGNITUDE |, SIGNUM ×
|
554. |
Increasing absolute value without change of sign
|
XD; YD
|
|
(×X)×Y+|X |
555. |
Rounding to zero values of X close to zero
|
XD; YD
|
|
X×Y|X |
556. |
Square of elements of X without change of sign
|
XD |
|
X×|X |
557. |
Choosing according to signum |
XD; YA1
|
|
Y[2+×X] |
EXPAND \ |
558. |
Not first zero (\) in each subvector of Y indicated by X
|
XB1; YB1
|
|
~(B^X)(BX)\A>¯10,A(BX)/B~Y
|
559. |
First one (<\) in each subvector of Y indicated by X
|
XB1; YB1
|
|
(Y^X)(YX)\A>¯10,A(YX)/Y
|
560. |
Replacing elements of X in set Y with blanks/zeroes
|
XA0; YA1
|
|
A\(A~X¹Y)/X |
561. |
Replacing elements of X not in set Y with blanks/zeroes
|
XA1; YA
|
|
A\(AX¹Y)/X |
562. |
Merging X and Y under control of G (mesh)
|
XA1; YA1; GB1
|
|
A A[(~G)/¼½G]Y AG\X
|
563. |
Replacing elements of X not satisfying Y with blanks/zeroes
|
XA; YB1
|
|
Y\Y/X |
564. |
Adding an empty row into X after rows Y
|
XA2; YI1
|
|
(~(¼(½Y)+1½½X)¹Y+¼½Y)X
|
565. |
Test if numeric |
XA1 |
|
0¹0\0½X |
566. |
Adding an empty row into X after row Y
|
XA2; YI0
|
|
((Y+1)¬¼1+1½½X)X
|
567. |
Underlining words |
XC1 |
|
X,[IO-.1](' '¬X)\'¯'
|
568. |
Using boolean matrix Y in expanding X
|
XA1; YB2
|
|
(½Y)½(,Y)\X |
569. |
Spacing out text |
XC1 |
|
((2×½X)½1 0)\X |
COMPRESS / |
570. |
Lengths of groups of ones in X
|
XB1 |
|
(A>0)/A(1A)-1+¯1A(~A)/¼½A0,X,0
|
571. |
Syllabization of a Finnish word X
|
XA1 |
|
(~A¹1,½X)/AA/¼½A(1A,0) |
572. |
Choosing a string according to boolean value G
|
XC1; YC1; GB0
|
|
(G/X),(~G)/Y |
573. |
Removing leading, multiple and trailing blanks
|
XC1 |
|
(' '=1X)((1A,0)A' '¬X)/X
|
575. |
Removing columns Y from array X
|
XA; YI1
|
|
(~(¼¯1½X)¹Y)/X
|
576. |
Removing trailing blanks |
XC1 |
|
(¯1(' '¬X)/¼½X)½X
|
577. |
Lengths of subvectors of X having equal elements
|
XA1 |
|
(1A)-¯1A(A,1)/¼1+½A1,(1X)¬¯1X
|
578. |
Field lengths of vector X; G
ending indices
|
XA1; GI1
|
|
G-¯10,G(~IO)+(((1X)¬¯1X),1)/¼½X
|
580. |
Removing multiple and trailing blanks
|
XC1 |
|
((1A,0)A' '¬X)/X
|
581. |
Removing leading and multiple blanks
|
XC1 |
|
(A¯10,A' '¬X)/X
|
582. |
Removing multiple blanks |
XC1 |
|
(A¯11,A' '¬X)/X
|
583. |
Removing duplicate Y's from vector X
|
XA1; YA0
|
|
(A¯11,AX¬Y)/X
|
584. |
Indices of all occurrences of elements of Y in X
|
XA1; YA
|
|
(X¹Y)/¼½X |
585. |
Union of sets, |
XA1; YA1
|
|
Y,(~X¹Y)/X |
586. |
Elements of X not in Y (difference of sets)
|
XA1; YA
|
|
(~X¹Y)/X |
587. |
Rows of non-empty matrix X starting with a character in Y
|
XA2; YA1
|
|
(X[;1]¹Y)X |
588. |
Intersection of sets, |
XA1; YA
|
|
(X¹Y)/X |
589. |
Reduction with function ¸ in dimension Y, rank unchanged
|
YI0; XA
|
|
((½X)*Y¬¼½½X)½ ¸/[Y]X
|
590. |
Replacing all values X in G with Y
|
XA0; YA0; GA
|
|
(½G)½A A[(A=X)/¼½A,G]Y
|
591. |
Indices of all occurrences of Y in X
|
XA1; YA0
|
|
(Y=X)/¼½X |
592. |
Replacing elements of G satisfying X with Y
|
YA0; XB1; GA1
|
|
G[X/¼½G]Y |
593. |
Removing duplicates from positive integers
|
XI1 |
|
A/¼9999 A[X]1 A9999½0
|
594. |
Indices of ones in logical vector X
|
XB1 |
|
X/¼½X |
595. |
Conditional in text |
XB0 |
|
((~X)/'IN'),'CORRECT'
|
596. |
Removing blanks |
XA1 |
|
(' '¬X)/X |
597. |
Removing elements Y from vector X
|
XA1; YA0
|
|
(X¬Y)/X |
598. |
Vector to expand a new element after each one in X
|
XB1 |
|
(,X,[1.5]1)/,X,[1.5]~X
|
599. |
Reduction with FUNCTION ¸ without respect to shape
|
XD |
|
¸/,X |
600. |
Reshaping scalar X into a one-element vector
|
XA |
|
1/X |
601. |
Empty matrix |
XA2 |
|
0X |
602. |
Selecting elements of X satisfying condition Y
|
XA; YB1
|
|
Y/X |
TAKE |
603. |
Inserting vector X into matrix Y after row G
|
XA1; YA2; GI0
|
|
Y[¼G;],[1]((1½Y)X),[1](2G)Y
|
604. |
Filling X with last element of X to length Y
|
XA1; YI0
|
|
YX,Y½¯1X
|
605. |
Input of row Y of text matrix X
|
XC2; YI0
|
|
X[Y;](1½X)
|
606. |
First ones in groups of ones |
XB |
|
X>((-½½X)¯1)0,X
|
607. |
Inserting X into Y after index G
|
XA1; YA1; GI0
|
|
(GY),X,GY
|
608. |
Pairwise differences of successive columns (inverse of +\)
|
XD |
|
X-((-½½X)¯1)0,X
|
609. |
Leftmost neighboring elements |
XD |
|
((-½½X)¯1)0,X
|
610. |
Rightmost neighboring elements
|
XD |
|
((-½½X)1)X,0
|
611. |
Shifting vector X right with Y without rotate
|
XA1; YI0
|
|
(-½X)(-Y)X
|
612. |
Shifting vector X left with Y without rotate
|
XA1; YI0
|
|
(½X)YX
|
613. |
Drop of Y first rows from matrix X
|
XA2; YI0
|
|
(2Y)X |
614. |
Test if numeric |
XA |
|
0¹10½X |
615. |
Reshaping non-empty lower-rank array X into a matrix
|
XA; 2½½X
|
|
(¯21 1,½X)½X
|
616. |
Giving a character default value for input
|
XC0 |
|
1,X |
617. |
Adding scalar Y to last element of X
|
XD; YD0
|
|
X+(-½X)Y |
618. |
Number of rows in matrix X |
XA2 |
|
1½X |
619. |
Number of columns in matrix X |
XA2 |
|
¯1½X |
620. |
Ending points for X fields of width Y
|
XI0; YI0
|
|
(X×Y)½(-Y)1 |
621. |
Starting points for X fields of width Y
|
XI0; YI0
|
|
(X×Y)½Y1 |
622. |
Zero or space depending on the type of X (fill element)
|
XA |
|
10½X |
623. |
Forming first row of a matrix to be expanded
|
XA1 |
|
1 80½80X |
624. |
Vector of length Y with X ones on the left, the rest zeroes
|
XI0; YI0
|
|
YX½1 |
625. |
Justifying text X to right edge of field of width Y
|
YI0; XC1
|
|
(-Y)X |
DROP |
627. |
Starting points of groups of equal elements (non-empty X)
|
XA1 |
|
1,(1X)¬¯1X
|
628. |
Ending points of groups of equal elements (non-empty X)
|
XA1 |
|
((1X)¬¯1X),1
|
629. |
Pairwise ratios of successive elements of vector X
|
XD1 |
|
(1X)÷¯1X
|
630. |
Pairwise differences of successive elements of vector X
|
XD1 |
|
(1X)-¯1X
|
631. |
Differences of successive elements of X along direction Y
|
XD; YI0
|
|
X-(-Y=¼½½X)0,[Y]X
|
632. |
Ascending series of integers Y..X (for small Y and X)
|
XI0; YI0
|
|
(Y-1)¼X |
633. |
First ones in groups of ones |
XB1 |
|
X>¯10,X |
634. |
Last ones in groups of ones |
XB1 |
|
X>1X,0 |
635. |
List of names in X (one per row)
|
XC2 |
|
1,',',X |
636. |
Selection of X or Y depending on condition G
|
XA0; YA0; GB0
|
|
''½GX,Y |
637. |
Restoring argument of cumulative sum (inverse of +\)
|
XD1 |
|
X-¯10,X |
638. |
Drop of Y first rows from matrix X
|
XA2; YI0
|
|
(Y,0)X |
639. |
Drop of Y first columns from matrix X
|
XA2; YI0
|
|
(0,Y)X |
640. |
Number of rows in matrix X |
XA2 |
|
¯1½X |
641. |
Number of columns in matrix X |
XA2 |
|
1½X |
642. |
Conditional drop of Y elements from array X
|
XA; YI1; GB1
|
|
(Y×G)X |
643. |
Conditional drop of last element of X
|
XA1; YB0
|
|
(-Y)X |
MEMBER OF ¹ |
644. |
Expansion vector with zero after indices Y
|
XA1; YI1
|
|
~(¼(½Y)+½X)¹Y+¼½Y |
645. |
Boolean vector of length Y with zeroes in locations X
|
XI; YI0
|
|
(~(¼Y)¹X) |
646. |
Starting points for X in indices pointed by Y
|
XA1; YI1
|
|
(¼½X)¹Y |
647. |
Boolean vector of length Y with ones in locations X
|
XI; YI0
|
|
(¼Y)¹X |
648. |
Check for input in range 1..X |
XA |
|
(Y)¹¼X
|
649. |
Test if arrays are identical |
XA; YA
|
|
~0¹X=Y |
650. |
Zeroing elements of Y depending on their values
|
YD; XD
|
|
Y×~Y¹X |
651. |
Test if single or scalar |
XA |
|
1¹½,X |
652. |
Test if vector |
XA |
|
1¹½½X |
653. |
Test if X is an empty array |
XA |
|
0¹½X |
INDEX GENERATOR ¼ |
654. |
Inverting a permutation |
XI1 |
|
A A[X]A A¼½X
|
655. |
All axes of array X |
XA |
|
¼½½X |
656. |
All indices of vector X |
XA1 |
|
¼½X |
657. |
Arithmetic progression of Y numbers from X with step G
|
XD0; YD0; GD0
|
|
X+G×(¼Y)-IO |
658. |
Consecutive integers from X to Y (arithmetic progression)
|
XI0; YI0
|
|
(X-IO)+¼1+Y-X
|
659. |
Empty numeric vector |
|
|
¼0 |
660. |
Index origin (IO) as a vector
|
|
|
¼1 |
LOGICAL FUNCTIONS ~ ^
|
661. |
Demote non-boolean representations to booleans
|
XB |
|
0X |
662. |
Test if X is within range ( Y[1],Y[2] )
|
XD; YD1
|
|
(Y[1] |
663. |
Test if X is within range [ Y[1],Y[2] ]
|
XD; YD1; 2=½Y
|
|
(Y[1]X)^(XY[2])
|
664. |
Zeroing all boolean values |
XB |
|
0^X |
666. |
Selection of elements of X and Y depending on condition G
|
XD; YD; GB
|
|
(X×G)+Y×~G |
667. |
Changing an index origin dependent result to be as IO=1
|
XI |
|
(~IO)+X |
668. |
Conditional change of elements of Y to one according to X
|
YD; XB
|
|
Y*~X |
COMPARISON <ˆ> ¬ |
669. |
X implies Y |
XB; YB
|
|
XY |
670. |
X but not Y |
XB; YB
|
|
X>Y |
671. |
Avoiding division by zero error (gets value zero)
|
XD; YD
|
|
(0¬X)×Y÷X+0=X |
672. |
Exclusive or |
XB; YB
|
|
X¬Y |
673. |
Replacing zeroes with corresponding elements of Y
|
XD; YD
|
|
X+Y×X=0 |
674. |
Kronecker delta of X and Y (element of identity matrix)
|
XI; YI
|
|
Y=X |
RAVEL , |
675. |
Catenating Y elements G after every element of X
|
XA1; YI0; GA
|
|
,X,((½X),Y)½G |
676. |
Catenating Y elements G before every element of X
|
XA1; YI0; GA0
|
|
,(((½X),Y)½G),X |
677. |
Merging vectors X and Y alternately
|
XA1; YA1
|
|
,Y,[IO+.5]X |
678. |
Inserting Y after each element of X
|
XA1; YA0
|
|
,X,[1.1]Y |
679. |
Spacing out text |
XC1 |
|
,X,[1.1]' ' |
680. |
Reshaping X into a matrix of width Y
|
XD, YI0
|
|
(((½,X),1)×Y*¯1 1)½X
|
681. |
Temporary ravel of X for indexing with G
|
XA; YA; GI
|
|
XA½X X[G]Y X,X A½X
|
682. |
Temporary ravel of X for indexing with G
|
XA; YA; GI
|
|
X(½X)½A A[G]Y A,X
|
683. |
First column as a matrix |
XA2 |
|
X[;,1] |
684. |
Number of elements (also of a scalar)
|
XA |
|
½,X |
CATENATE , |
685. |
Separating variable length lines
|
XA1; YA1
|
|
X,TC[2],Y |
686. |
X×X identity matrix |
XI0 |
|
(X,X)½1,X½0 |
687. |
Array and its negative ('plus minus')
|
XD |
|
X,[.5+½½X]-X |
688. |
Underlining a string |
XC1 |
|
X,[IO-.1]'¯'
|
689. |
Forming a two-column matrix |
XA1; YA1
|
|
X,[1.1]Y |
690. |
Forming a two-row matrix |
XA1; YA1
|
|
X,[.1]Y |
691. |
Selection of X or Y depending on condition G
|
XA0; YA0; GB0
|
|
(X,Y)[IO+G] |
692. |
Increasing rank of Y to rank of X
|
XA; YA
|
|
((((½½X)-½½Y)½1),½Y)½Y
|
693. |
Identity matrix of shape of matrix X
|
XD2 |
|
(½X)½1,0×X |
694. |
Reshaping vector X into a two-column matrix
|
XA1 |
|
((0.5×½X),2)½X |
696. |
Reshaping vector X into a one-row matrix
|
XA1 |
|
(1,½X)½X |
697. |
Reshaping vector X into a one-column matrix
|
XA1 |
|
((½X),1)½X |
698. |
Forming a Y-row matrix with all rows alike (X)
|
XA1; YI0
|
|
(Y,½X)½X |
699. |
Handling array X temporarily as a vector
|
XA |
|
(½X)½ ... ,X |
700. |
Joining sentences |
XA; YA1
|
|
Y,0½X |
701. |
Entering from terminal data exceeding input (printing) width
|
XD |
|
X0 2 1 2 5 8 0 4 5,
|
INDEXING [ ] |
702. |
Value of fixed-degree polynomial Y at points X
|
YD1; XD
|
|
Y[3]+X×Y[2]+X×Y[1]
|
703. |
Number of columns in array X |
XA |
|
(½X)[½½X] |
704. |
Number of rows in matrix X |
XA2 |
|
(½X)[1] |
705. |
Number of columns in matrix X |
XA2 |
|
(½X)[2] |
706. |
Conditional elementwise change of sign
|
YD; XB
|
|
Y×1 ¯1[1+X] |
707. |
Selection depending on index origin
|
XA1 |
|
X[2×IO] |
708. |
Indexing with boolean value X (plotting a curve)
|
XB |
|
' *'[IO+X] |
709. |
Indexing independent of index origin
|
XA1; YI
|
|
X[IO+Y] |
710. |
Selection depending on index origin
|
XA1 |
|
X[1] |
711. |
Zeroing a vector (without change of size)
|
XD1 |
|
X[]0 |
712. |
First column as a vector |
XA2 |
|
X[;1] |
SHAPE ½ |
713. |
Rank of array X |
XA |
|
½½X |
715. |
Duplicating vector X Y times |
XA1; YI0
|
|
(Y×½X)½X |
716. |
Adding X to each row of Y |
XD1; YD; (½X)=¯1½Y
|
|
Y+(½Y)½X |
717. |
Array with shape of Y and X as its rows
|
XA1; YA
|
|
(½Y)½X |
718. |
Number of rows in matrix X |
XA2 |
|
1½½X |
RESHAPE ½ |
720. |
Forming an initially empty array to be expanded
|
|
|
0 80½0 |
721. |
Output of an empty line |
XA |
|
0½X |
722. |
Reshaping first element of X into a scalar
|
XA |
|
''½X |
723. |
Corner element of a (non-empty) array
|
XA |
|
1½X |
ARITHMETIC + - × ÷
|
724. |
Continued fraction |
|
|
1+÷2+÷3+÷4+÷5+÷6+÷ ...
|
725. |
Force 0÷0 into DOMAIN ERROR in division
|
XD; YD
|
|
Y×÷X |
726. |
Conditional elementwise change of sign
|
XD; YB; ½X
½Y
|
|
Xׯ1*Y |
727. |
Zero array of shape and size of X
|
XD |
|
0×X |
728. |
Selecting elements satisfying condition Y, zeroing others
|
XD; YB
|
|
Y×X |
729. |
Number and its negative ('plus minus')
|
XD0 |
|
1 ¯1×X |
730. |
Changing an index origin dependent result to be as IO=0
|
XI |
|
-IO-X |
731. |
Changing an index origin dependent argument to act as IO=1
|
XI |
|
(IO-1)+X |
732. |
Output of assigned numeric value
|
XD |
|
+X |
733. |
Changing an index origin dependent argument to act as IO=0
|
XI |
|
IO+X |
734. |
Selecting elements satisfying condition Y, others to one
|
XD; YB
|
|
X*Y |
MISCELLANEOUS |
736. |
Setting a constant with hyphens
|
|
|
LX
|
737. |
Output of assigned value |
XA |
|
X
|
738. |
Syntax error to stop execution
|
|
|
* |
888. |
Meaning of life |
|
|
´|-*+±×÷!²³~½,µ?¼0 |