List & Matrix One Liners

This page is dedicated to showcase small snippets of code may be useful. These small routines are designed to accomplish tasks involving lists, matrices, and their attributes. Unless specified, output is in Ans.

Index of Maximum List Element – jonbush

This line finds the index of first occurrence of a specific value in a list.
The list to be searched is in Ans at the beginning.

````:1+sum(not(cumSum(Ans=max(Ans`
```

This can also be used to find the index of the minimum or of any other value in place of max(Ans

Number of Elements Less than X – kg583

This line counts the number of elements in a list less than some number X.
The list to be searched is in Ans.

````:sum(0<Ans-X`
```

Replace < with > to return the number of elements greater than X, for numbers less than or equal to X and for numbers greater than or equal to X.

Shuffle a list

This routine is the fastest way to shuffle a list. L₁ is the list to be shuffled and L₂ is a temporary list used to do the shuffling. Make sure to clean up L₂ after your program.

``````:rand(dim(L₁->L₂
:SortA(L₂,L₁```
```

Reverse a list – Xeda Elnara

This routine is the smallest way to reverse a list. L₁ is reversed without affecting Ans.

``````:dim(L₁
:seq(L₁(Ans-K),K,0,Ans-1```
```

Remove list element – jonbush

This routine is the smallest way to remove a single element from a list. The position of the element to be removed from L₁ is in Ans, and the result is a list with that element removed.

````:seq(L₁(A+(A≥Ans)),A,1,dim(L₁)-1`
```

Enter List using Input - Trenly

This routine is a way to allow a list to be entered using the Input command. The values to store in the list should be a comma separated string of numbers e.g "1,2,3"

``````:Input Str1
:expr("{"+Str1→L₁```
```

Nth Occurrence of Element — kg583

This routine will find the index of the Nth occurrence of an element X in a list. If it does not exist, the output will be dim(Ans)+1

````:1+Σ(sum(not(cumSum(Ans=X)-K)),K,0,N-1`
```

Partial Probability - Timothy Foster

This routine takes a single list in Ans, and randomly selects an element according to the bin sizes in the list. As an example, if the input is {4,11,2,3,0} there is a 4/20 chance that Bin 1 is chosen, an 11/20 chance for bin 2, 2/20 for bin 3, a 3/20 chance for bin 4, and a 0/20 chance for bin 5.

````1+sum(cumSum(Ans)<randsum(Ans`
```

.