# Numpy – Replace All NaN Values with Ones

In this tutorial, we will look at how to replace all occurrences of NaN values in a Numpy array with ones with the help of some examples.

## How do I replace all NaN with 1 in Numpy?

Use boolean indexing to replace all instances of NaN in a Numpy array with ones. Here, we use the `numpy.isnan()` function to check whether a value inside the array is NaN or not, and if it is, we set it to one.

The following is the syntax –

```import numpy as np
ar[np.isnan(ar)] = 1```

Let’s now look at a step-by-step example of using the above syntax on a Numpy array.

### Step 1 – Create a Numpy array

First, we will create a one-dimensional array that we will be using throughout this tutorial.

Highlighted programs for you

Flatiron School

Flatiron School

Data Science Bootcamp
Product Design UX/UI Bootcamp

University of Maryland Global Campus

University of Maryland Global Campus

Cloud Computing Systems Master's
Digital Forensics & Cyber Investigation Master's

Creighton University

Creighton University

Health Informatics Master's

```import numpy as np

# create numpy array
ar = np.array([1, 2, np.nan, 3, 4, np.nan, np.nan, 5])
# display the array
ar```

Output:

`array([ 1.,  2., nan,  3.,  4., nan, nan,  5.])`

Here, we used the `np.array()` function to create a Numpy array with some numbers and some NaN values.

### Step 2 – Set NaN values in the array to 1 using boolean indexing

Use the `numpy.isnan()` function to check whether a value in the array is NaN or not. If it is, set it to one.

Let’s replace all occurrences of NaN in the above array with 1.

```# replace nan with ones
ar[np.isnan(ar)] = 1
# display the array
ar```

Output:

`array([1., 2., 1., 3., 4., 1., 1., 5.])`

You can see that each instance of NaN has been replaced by a 1 in the above array. Note that here we are modifying the original array.

You can also use this method to replace NaN values with 1s in higher-dimensional arrays. For example, let’s apply this method to a two-dimensional array containing some NaN values.

```# create a 2D numpy array
ar = np.array([
[1, np.nan, 2],
[np.nan, 3, 4],
[5, np.nan, np.nan]
])
# display the array
ar```

Output:

```array([[ 1., nan,  2.],
[nan,  3.,  4.],
[ 5., nan, nan]])```

Here, we created a 2D Numpy array containing some NaN values.

Let’s now replace the NaN values in this 2D array with 1s.

```# replace nan with ones
ar[np.isnan(ar)] = 1
# display the array
ar```

Output:

```array([[1., 1., 2.],
[1., 3., 4.],
[5., 1., 1.]])```

The array now has 1s in place of NaNs.

You can similarly use this method to replace NaN values in a Numpy array with any other value.

## Summary – Replace NaN values in Numpy array with ones

In this tutorial, we looked at how to replace all NaN values in a Numpy array with ones. The following is a short summary of the steps mentioned in this tutorial.

1. Create a Numpy array (skip this step if you already have an array to operate on).
2. Use the `numpy.isnan()` function to check whether a value in the array is NaN or not. If it is, set it to 1 using boolean indexing `ar[np.isnan(ar)] = 1`

You might also be interested in –

• 