Entropie
@Entropie

Как правильно заполнить в таблице pandas nan нулями?

Мой код. Правильно ли я делаю?
for column in X:
    for idx, val in enumerate(X[colum].isnull().values):
        if val:
            X[column].values[idx] = 0.0
  • Вопрос задан
  • 2293 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Dronablo
Oracle performance geek
Если при использовании pandas или numpy вы делает вложенный for (а в большинстве случае и одинарный) - вы делаете что-то не так, во всяком случае - не самым оптимальным образом.

import numpy as np
import pandas as pd

print('pandas version: ' + pd.__version__)
print()
print('Source dataframe:')
X = pd.DataFrame([['John', 10],
                  ['Mike', None],
                  ['Alice', 20],
                  ['Eve', None]], columns=['Name', 'Salary'])
print(X)

X['Salary'].fillna(0.0, inplace=True)
print()
print('Target dataframe:')
print(X)


pandas version: 0.18.1

Source dataframe:
    Name  Salary
0   John    10.0
1   Mike     NaN
2  Alice    20.0
3    Eve     NaN

Target dataframe:
    Name  Salary
0   John    10.0
1   Mike     0.0
2  Alice    20.0
3    Eve     0.0
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы