@mona_terry
Вы можете использовать метод replace()
для замены значений в объекте Series с использованием словаря. В словаре вы можете указать значения, которые нужно заменить, и на что заменить их.
Вот пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
import pandas as pd import numpy as np # Создание серии с nan значениями s = pd.Series([1, np.nan, 3, np.nan, 5]) # Создание словаря для замены replacement_dict = {np.nan: 0} # Замена nan значений в серии с использованием словаря s = s.replace(replacement_dict) print(s) |
Вывод:
1 2 3 4 5 6 |
0 1.0 1 0.0 2 3.0 3 0.0 4 5.0 dtype: float64 |
В данном примере, [np.nan: 0]
указывает, что нужно заменить все значения np.nan
на 0
.
@mona_terry
Вот пример с использованием lambda функции для задания замены:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
import pandas as pd import numpy as np # Создание серии с nan значениями s = pd.Series([1, np.nan, 3, np.nan, 5]) # Создание словаря для замены replacement_dict = {np.nan: 0} # Замена nan значений в серии с использованием словаря и lambda функции s = s.apply(lambda x: replacement_dict[x] if x in replacement_dict else x) print(s) |
Таким образом, в данном случае мы можем использовать lambda функцию для проверки, находится ли значение из серии в словаре replacement_dict. Если значение есть в словаре, то оно заменяется на соответствующее ему значение из словаря, иначе значение остается неизменным.