# How to Add Row to Matrix in NumPy (With Examples)

You can use the following syntax to add a row to a matrix in NumPy:

```#add new_row to current_matrix
current_matrix = np.vstack([current_matrix, new_row])
```

You can also use the following syntax to only add rows to a matrix that meet a certain condition:

```#only add rows where first element is less than 10
current_matrix = np.vstack((current_matrix, new_rows[new_rows[:,0] < 10]))```

The following examples shows how to use this syntax in practice.

### Example 1: Add Row to Matrix in NumPy

The following code shows how to add a new row to a matrix in NumPy:

```import numpy as np

#define matrix
current_matrix = np.array([[1 ,2 ,3], [4, 5, 6], [7, 8, 9]])

new_row = np.array([10, 11, 12])

current_matrix = np.vstack([current_matrix, new_row])

#view updated matrix
current_matrix

array([[ 1,  2,  3],
[ 4,  5,  6],
[ 7,  8,  9],
[10, 11, 12]])
```

Notice that the last row has been successfully added to the matrix.

### Example 2: Add Rows to Matrix Based on Condition

The following code shows how to add several new rows to an existing matrix based on a specific condition:

```import numpy as np

#define matrix
current_matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

#define potential new rows to add
new_rows = np.array([[6, 8, 10], [8, 10, 12], [10, 12, 14]])

#only add rows where first element in row is less than 10
current_matrix = np.vstack((current_matrix, new_rows[new_rows[:,0] < 10]))

#view updated matrix
current_matrix

array([[ 1,  2,  3],
[ 4,  5,  6],
[ 7,  8,  9],
[ 6,  8, 10],
[ 8, 10, 12]])
```

Only the rows where the first element in the row was less than 10 were added.

Note: You can find the complete online documentation for the vstack() function here.