I wish to assign `vector` elements to a `matrix`. In my example I have a population of 10 kinds of fruit available for purchase, in `my.fruit`. A sample of five pieces of fruit are purchased in the sequence shown in `sequence.of.purchased.item`. I want to create a `matrix` containing the sequence in which the fruit was purchased as shown in `desired.result`.

Here is a somewhat long description of how `desired.result` is constructed. The vector `my.fruit` is essentially the row names of the `matrix` `desired.result`. The first plum purchased was the first piece of fruit purchased. The sequence number of `1` is placed in the first column of the fifth row, the row representing plums. The second plum purchased was the third piece of fruit purchased. The sequence number of `3` is placed in the second column of the plum row. The first apple purchased was the second piece of fruit purchased. So, the number 2 is placed in the first column of the first row, the row representing apples. The fourth piece of purchased fruit was an orange. So, a 4 is placed in the first column of the second row, the row representing oranges. 
 The tenth row represents olives, but no olives were purchased. Similarly, no cherries, peaches, apricots, pears, grapefruit or figs were purchased. So, their rows are all zero in `desired.result`.

```
my.fruit <- c('apple', 'orange', 'cherry', 'peach', 'plum',
              'apricot', 'pear', 'grapefruit', 'fig', 'olive')

sequence.of.purchased.item <- c('plum', 'apple', 'plum', 'orange', 'plum')

desired.result <- matrix(c(
    2,    0,    0,
    4,    0,    0,
    0,    0,    0,
    0,    0,    0,
    1,    3,    5,
    0,    0,    0,
    0,    0,    0,
    0,    0,    0,
    0,    0,    0,
    0,    0,    0), ncol = 3, byrow = TRUE)

```

I can obtain the row and column indices for each piece of purchased fruit using:

```
purchase.order.row <- match(sequence.of.purchased.item, my.fruit)
purchase.order.row
#[1] 5 1 5 2 5

purchase.order.col <- sapply(1:length(sequence.of.purchased.item), 
     function(i) {sum(sequence.of.purchased.item[i] == sequence.of.purchased.item[1:i])})
purchase.order.col
#[1] 1 1 2 1 3

```

Here I attempt to assign the sequence number of each purchased fruit to an output `matrix` using `sapply`:

```
my.output <- matrix(0, ncol = 3, nrow = 10)

sapply(1:5, function(x) my.output[purchase.order.row[x], 
                                  purchase.order.col[x]] = x)

```

However, the `sapply` statement is not returning the desired output.

```
my.output
      [,1] [,2] [,3]
 [1,]    0    0    0
 [2,]    0    0    0
 [3,]    0    0    0
 [4,]    0    0    0
 [5,]    0    0    0
 [6,]    0    0    0
 [7,]    0    0    0
 [8,]    0    0    0
 [9,]    0    0    0
[10,]    0    0    0

```