• 解决问题:pandas读取csv文件时报错:TypeError: invalid type comparison


    在Python中用pandas读取csv文件并对csv里面的数据进行处理的时候,有可能会遇到这样的错误:

    TypeError: invalid type comparison

    • 无效的类型比较

    这时可以去打印一下你的dataframe中的数据看看

    1、可能有些条目中没有数据,打印时它会显示成nan,而nan是没有办法和任何数据进行比较的,它不和任何值相等,包括他自己(因此也可以用 a != a 来判断a是否是nan)。

    所以在后面的数据处理中如果进行了比较操作则会报错:

    TypeError: invalid type comparison
    解决办法,在读取csv的时候加上参数

    keep_default_na=False
    这样没有数据的条目就会被识别为空字符’ ‘而不是nan了

    2、可能你的dataframe中不同列的数据类型不一样,不如有的被识别为str,有的被识别为int,虽然它们看起来都是数字,但在后面进行比较的话也同样会报错

    这时候可以加一个参数

    converters={'from':str,'to':str} # 把from列和to列都转换为str类型

    converters的解释为:

    converters : dict, default None
    Dict of functions for converting values in certain columns. Keys can either
    be integers or column labels

    类型相同后就可以一起比较啦

  • 相关阅读:
    Asp.net的核心对象
    webform在页面生成的代码与事件回传
    计算机专业课程
    代替iframe的方法
    js中斜杠转义
    Uncaught Error: Syntax error, unrecognized expression: |117的js错误
    vs调试时报503错误
    Md5加密方法
    ps批量修改图片
    “Parsing filters unsupported” error during extraction of RAR file
  • 原文地址:https://www.cnblogs.com/cola-1998/p/10803497.html
Copyright © 2020-2023  润新知