• Python机器学习(九十)Pandas 去除null值


    数据集中通常会包含null值或空值,对于空值的处理有2种方式:

    • 删除带有null的行或列
    • 用非空值填充null项

    检查null值

    要处理数据集中的null值,首先要找出DataFrame中的哪些单元格是空的:

    movies_df.isnull()

    输出

                                              rank  genre  description  director  actors   year  runtime  rating  votes  revenue_millions  metascore
    Title
    Guardians of the Galaxy                  False  False        False     False   False  False    False   False  False             False      False
    Prometheus                               False  False        False     False   False  False    False   False  False             False      False
    Split                                    False  False        False     False   False  False    False   False  False             False      False
    Sing                                     False  False        False     False   False  False    False   False  False             False      False
    Suicide Squad                            False  False        False     False   False  False    False   False  False             False      False
    The Great Wall                           False  False        False     False   False  False    False   False  False             False      False
    La La Land                               False  False        False     False   False  False    False   False  False             False      False
    
    ...                                        ...    ...          ...       ...     ...    ...      ...     ...    ...               ...        ...
    
    Taare Zameen Par                         False  False        False     False   False  False    False   False  False             False      False
    Take Me Home Tonight                     False  False        False     False   False  False    False   False  False             False       True
    Resident Evil: Afterlife                 False  False        False     False   False  False    False   False  False             False      False
    Project X                                False  False        False     False   False  False    False   False  False             False      False
    Secret in Their Eyes                     False  False        False     False   False  False    False   False  False              True      False
    Hostel: Part II                          False  False        False     False   False  False    False   False  False             False      False
    Step Up 2: The Streets                   False  False        False     False   False  False    False   False  False             False      False
    Search Party                             False  False        False     False   False  False    False   False  False              True      False
    Nine Lives                               False  False        False     False   False  False    False   False  False             False      False
    
    [1000 rows x 11 columns]

    isnull()方法返回一个DataFrame,其中每个单元格都是True或False,表示该单元格是不是null状态。

    为了统计每一列的空值,可以使用聚合函数sum()进行求和:

    movies_df.isnull().sum()

    输出

    rank                  0
    genre                 0
    description           0
    director              0
    actors                0
    year                  0
    runtime               0
    rating                0
    votes                 0
    revenue_millions    128
    metascore            64
    dtype: int64

    .isnull()本身并不是很有用,通常与sum()等其他方法一起使用。

    现在可以看到,数据中revenueue_millions列有128个缺失值,metascore列有64个缺失值。

    删除null值

    当数据集中有少量缺失值时,建议删除null数据。

    删除null值非常简单:

    movies_df.dropna()

    这个操作将删除任何至少有一个空值的行,但是它将返回一个新的DataFrame,而不更改原来的数据,更改原数据可以在这个方法中指定inplace=True

    对于我们的数据集,这个操作将删除128行,其中revenue_millions为空,以及64行,其中metascore为空。

    除了删除行,还可以通过设置axis=1删除空值列:

    movies_df.dropna(axis=1)

    在我们的数据集中,这个操作将删除revenue_millions和metascore列。

    axis=1指轴1,即列,轴0是行,这是NumPy中的概念。

    NumPy数组轴

    NumPy多维数组由轴表示,其中axis-0表示列,axis-1表示行。

    图

  • 相关阅读:
    散列
    Mac os 使用brew install 安装工具时报错 fatal: not in a git directory Error: Command failed with exit 128: git
    java虚拟机内存溢出
    windows 环境变量 立即生效
    phoenix 建表无法映射hbase已有字段的问题解决
    Phoenix
    Elasticsearch搭建集群步骤:
    分层架构的优缺点
    stateTest
    常用命令
  • 原文地址:https://www.cnblogs.com/huanghanyu/p/13174087.html
Copyright © 2020-2023  润新知