📜  .dropna() python (1)

📅  最后修改于: 2023-12-03 15:29:07.529000             🧑  作者: Mango

Python中的.dropna()方法

在数据分析和数据清洗过程中,经常会遇到需要删除空值或缺失值的情况。而在Python中,使用pandas库可以很方便地删除这些值。其中一个非常有用的方法是.dropna()。

.dropna()方法的作用

.dropna()方法可以删除掉DataFrame或Series中的任何缺失值。缺失值可以是NaN、NaT或其他占位符。默认情况下,该方法会删除整行或整列,具体取决于缺失值所处的位置。但可以使用参数来控制删除哪些项目。

使用.dropna()方法删除缺失值

1.删除DataFrame中的缺失值

import pandas as pd

# 创建一个包含缺失值的DataFrame
data = pd.DataFrame({"A": [1, 2, np.nan, 4], "B": [5, np.nan, 7, 8], "C": [9, 10, 11, np.nan]})
print(data)

# 删除包含缺失值的行
data.dropna()

# 删除包含缺失值的列
data.dropna(axis=1)

使用axis参数可以确定删除整行还是整列。在本例中,删除任何包含缺失值的列:

     A    B     C
0  1.0  5.0   9.0
1  2.0  NaN  10.0
2  NaN  7.0  11.0
3  4.0  8.0   NaN
     A    C
0  1.0  9.0
1  2.0  10.0
2  NaN  11.0
3  4.0  NaN
     B
0  5.0
1  NaN
2  7.0
3  8.0

2.删除Series中的缺失值

import pandas as pd

# 创建一个包含缺失值的Series
data = pd.Series([1, np.nan, 3, 4, np.nan])
print(data)

# 删除包含缺失值的Series
data.dropna()
0    1.0
1    NaN
2    3.0
3    4.0
4    NaN
dtype: float64
0    1.0
2    3.0
3    4.0
dtype: float64
.dropna()方法的常用参数
  • axis:确定删除缺失值的行还是列,默认axis=0,即删除行。
  • how:确定何时才删除行或列的方式。
    • 'any'(默认):只要有任何缺失值,就删除。
    • 'all':仅在整行/列都为缺失值时才删除。
  • thresh:确定在保留行/列之前需要多少个非缺失值。
  • subset:删除值时,仅考虑某些列或行。 可以传递列或行的名称或范围。
  • inplace:布尔值,如果为True,则在原始DataFrame或Series上进行修改,而不是创建新的DataFrame或Series。默认为False。
总结

.dropna()方法是Python数据分析中完美的工具之一,可以帮助我们轻松地删除缺失值。我们可以使用pandas库中的其他方法来进一步处理数据。