pandas中dropna() 函数的用法

本文详细介绍了Pandas库中的dropna()函数,用于删除DataFrame中的缺失值,包括行或列级别的删除,以及如何根据各种参数进行定制操作。通过示例展示了如何使用该函数进行数据预处理。
摘要由CSDN通过智能技术生成

dropna() 函数是 Pandas 中用于删除包含缺失值的行或列的函数。它可以用于数据清洗和数据预处理,去除缺失值,以便进一步分析或建模。

下面是 dropna() 函数的基本语法:

DataFrame.dropna(axis=0, how='any', subset=None, inplace=False, ...)

其中的参数含义如下:

  • axis:指定删除缺失值的轴,0 表示删除包含缺失值的行,1 表示删除包含缺失值的列,默认为 0
  • how:指定删除的方式,可选值为 'any''all''any' 表示只要有一个缺失值就删除,'all' 表示全部为缺失值才删除,默认为 'any'
  • subset:用于指定要考虑的列的子集,即在哪些列上查找缺失值,默认为 None,表示在所有列上查找缺失值。
  • inplace:指定是否在原地修改 DataFrame,即是否直接修改原始对象而不返回副本,默认为 False

下面是一些示例说明 dropna() 函数的用法:

假设我们有以下 DataFrame:

import pandas as pd
import numpy as np

data = {
    'A': [1, 2, np.nan, 4],
    'B': [np.nan, 6, np.nan, 8],
    'C': [10, 11, 12, np.nan]
}
df = pd.DataFrame(data)

删除包含任何缺失值的行

# 删除包含任何缺失值的行
df_dropped = df.dropna()
print(df_dropped)

删除包含任何缺失值的列

# 删除包含任何缺失值的列
df_dropped = df.dropna(axis=1)
print(df_dropped)

删除指定列中包含缺失值的行

# 删除列 'A' 中包含缺失值的行
df_dropped = df.dropna(subset=['A'])
print(df_dropped)

删除全部为缺失值的行

# 删除全部为缺失值的行
df_dropped = df.dropna(how='all')
print(df_dropped)

通过 dropna() 函数,你可以轻松地删除 DataFrame 中的缺失值,以保持数据的一致性和准确性。

  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
pandasdropna()函数用于删除DataFrame包含缺失值的行或列。具体用法如下: 语法: ```python DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False) ``` 参数说明: - axis: 取值为0或1,表示删除行或列,默认为0 - how: 取值为'any'或'all',表示删除包含任意缺失值或全部缺失值的行或列,默认为'any' - thresh: 整数类型,表示每行或每列至少要有thresh个非缺失值才不会被删除,默认为None - subset: 字符串列表,表示只在给定的列查找缺失值并删除行,默认为None,即查找所有列 - inplace: 布尔类型,表示是否在原DataFrame上修改,默认为False,即返回一个新的DataFrame 示例: ```python import pandas as pd import numpy as np df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8], 'C': [9, 10, 11, 12]}) print(df) # 输出: # A B C # 0 1.0 5.0 9 # 1 2.0 NaN 10 # 2 NaN 7.0 11 # 3 4.0 8.0 12 # 删除包含任意缺失值的行 print(df.dropna()) # 输出: # A B C # 0 1.0 5.0 9 # 3 4.0 8.0 12 # 删除包含全部缺失值的列 print(df.dropna(axis=1, how='all')) # 输出: # A B C # 0 1.0 5.0 9 # 1 2.0 NaN 10 # 2 NaN 7.0 11 # 3 4.0 8.0 12 # 删除至少有2个缺失值的行 print(df.dropna(thresh=2)) # 输出: # A B C # 0 1.0 5.0 9 # 1 2.0 NaN 10 # 3 4.0 8.0 12 # 只在'A'和'C'列查找缺失值并删除行 print(df.dropna(subset=['A', 'C'])) # 输出: # A B C # 0 1.0 5.0 9 # 1 2.0 NaN 10 # 3 4.0 8.0 12 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值