w3resource

Pandas: Remove infinite values from a given DataFrame

Pandas: DataFrame Exercise-52 with Solution

Write a Pandas program to remove infinite values from a given DataFrame.

Sample Solution :

Python Code :

import pandas as pd
import numpy as np
df = pd.DataFrame([1000, 2000, 3000, -4000, np.inf, -np.inf])
print("Original DataFrame:")
print(df)
print("Removing infinite values:")
df = df.replace([np.inf, -np.inf], np.nan)
print(df)

Sample Output:

Original DataFrame:
             0
0  1000.000000
1  2000.000000
2  3000.000000
3 -4000.000000
4          inf
5         -inf
Removing infinite values:
        0
0  1000.0
1  2000.0
2  3000.0
3 -4000.0
4     NaN
5     NaN           

Python-Pandas Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Pandas program to convert the datatype of a given column(floats to ints).
Next: Write a Pandas program to insert a given column at a specific column index in a DataFrame.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Share this Tutorial / Exercise on : Facebook and Twitter

Python: Tips of the Day

Inserting if statements using conditional list comprehensions:

x = [1, 2, 3, 4, 5, 6]
result = []
for idx in range(len(x)):
    if x[idx] % 2 == 0:
        result.append(x[idx] * 2)
    else:
        result.append(x[idx])
result

Output:

[1, 4, 3, 8, 5, 12]
[(element * 2 if element % 2 == 0 else element) for element in x]

Output:

[1, 4, 3, 8, 5, 12]
[element * 2 for element in x if element % 2 == 0]

Output:

[4, 8, 12]