Найти - Пользователи
Полная версия: Удаление 'nan' в pandas
Начало » Python для новичков » Удаление 'nan' в pandas
1
Volodya
Здравствуйте!

Как удалить из массива pandas значения ‘nan’?
Пробую так, не срабатывает:
 dataset_xl_O =pd.read_excel('E:/Gidrolodge_.xlsx', sheet_name='O')
dataset_xl_Or =pd.read_excel('E:/Gidrolodge_.xlsx', sheet_name='Or')
dataset_xl_I =pd.read_excel('E:/Gidrolodge_.xlsx', sheet_name='I')
dataset_xl = pd.concat([dataset_xl_O, dataset_xl_Or, dataset_xl_I])
X_ = dataset_xl[['L', 'C', 'D']].values
X=pd.DataFrame(X_)
X.fillna(0)
Vladimirv
От нан можно избавиться несколькими способами, удалить строку/столбец с нан или обычно заменить нан на нуль(или еще что-то).
 df.fillna(0) # на 0
Удаляют с помощью .drop(), ищут что удалять например через .isna().
Volodya
Vladimirv
Удаляют с помощью .drop(), ищут что удалять например через .isna().
Да через неё и сделал:
 def Not_Nane_str(dataset):
    mask = dataset.isna()
    for i in range(0,len(dataset)):
        for j in range(0,len(dataset.iloc[i])):
            if (mask.iat[i, j]) == True:
                dataset.iat[i, j]=float(0)
            elif dataset.iat[i, j]=='-':
                  dataset.iat[i, j]=0                  
            else: dataset.iat[i, j]=float(str(dataset.iat[i, j]).replace(',','.').replace(' ',''))
            
    return dataset
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB