📅  最后修改于: 2023-12-03 15:03:28.488000             🧑  作者: Mango
在数据清洗与数据分析过程中,常常会遇到None和NaN这两种特殊值。在Python中,None表示空值,NaN则表示不是一个数。Pandas提供了一系列函数来处理这些特殊值。
DataFrame.replace(to_replace=None, value=None, inplace=False, limit=None, regex=False, method='pad')
该函数可将DataFrame中指定的特定值或者类型进行替换。
import pandas as pd
df = pd.DataFrame({'A': [1, None, 3], 'B': ['a', 'b', None]})
df.replace(None, 0, inplace=True)
df.replace('b', 'new_value', inplace=True)
print(df)
输出结果为:
A B
0 1 a
1 0 new_value
2 3 None
在上述例子中,我们先将DataFrame中的None替换为0,然后再将B列中的b替换为new_value。
DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
该函数可将DataFrame中的NaN替换为指定的值。
import pandas as pd
df = pd.DataFrame({'A': [1, None, 3], 'B': ['a', 'b', None]})
df.fillna(0, inplace=True)
print(df)
输出结果为:
A B
0 1 a
1 0 b
2 3 0
在上述例子中,我们先将DataFrame中的NaN替换为0,这里使用了fillna函数,将NaN替换为0,并将替换后的结果存储到原变量中。