将包含 NaN 的 Pandas 列转换为 dtype `int`

2024-01-22

我将数据从 .csv 文件读取到 Pandas 数据框,如下所示。对于其中一列,即id,我想将列类型指定为int。问题是id系列有缺失/空值。

当我尝试投射时id在读取 .csv 时将列转换为整数,我得到:

df= pd.read_csv("data.csv", dtype={'id': int}) 
error: Integer column has NA values

或者,我在阅读如下内容后尝试转换列类型,但这次我得到:

df= pd.read_csv("data.csv") 
df[['id']] = df[['id']].astype(int)
error: Cannot convert NA to integer

我该如何解决这个问题?


在版本 0.24.+ 中,pandas 获得了保存缺失值的整数数据类型的能力。

可空整数数据类型 http://pandas.pydata.org/pandas-docs/stable/user_guide/integer_na.html.

Pandas 可以使用以下方法表示可能存在缺失值的整数数据arrays.IntegerArray http://pandas.pydata.org/pandas-docs/stable/reference/pandas.arrays.IntegerArray.html。这是 pandas 中实现的扩展类型。它不是整数的默认数据类型,并且不会被推断;您必须显式地将 dtype 传递到array() http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.array.html#pandas.array or Series:

arr = pd.array([1, 2, np.nan], dtype=pd.Int64Dtype())
pd.Series(arr)

0      1
1      2
2    NaN
dtype: Int64

要将列转换为可为空整数,请使用:

df['myCol'] = df['myCol'].astype('Int64')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将包含 NaN 的 Pandas 列转换为 dtype `int` 的相关文章

  • 通过 rpy 将 SPSS 文件(.sav)导入 pandas 时如何保留标签?

    我正在寻找使用 SPSS 文件 sav pandas 在没有 SPSS 程序的情况下 典型文件转换为 csv 后的样子如下 在调查前两行的含义时 我不知道 SPSS 似乎第一行包含Labels 而第二行包含VarNames 当我将文件带入
  • 用定点迭代求解该方程

    我怎样才能解这个方程 x3 x 1 0 使用定点迭代 有没有定点迭代我可以在网上找到代码 尤其是Python 吗 Using scipy optimize fixed point http docs scipy org doc scipy
  • 从另一个文件覆盖函数中的变量

    一 总结 我不知道如何从另一个文件覆盖函数中的变量 2 示例 2 1 配置 I use logbook http logbook pocoo org and pyfancy https github com ilovecode1 Pyfan
  • argparse 更改参数的定义

    我按如下方式设置参数解析器 parser argparse ArgumentParser parser add argument point help enter a point e g 2 3 4 parser parse args po
  • Emacs:在缓冲区求值期间将参数传递给下级 Python shell

    最近我开始使用 Emacs 作为 Python IDE 它不太直观 我现在遇到的问题是当使用 C c C c 评估缓冲区时如何将命令行参数传递给下级 python shell 感谢帮助 这似乎并不容易实现 管理的劣质流程python el模
  • Python 排列(包括子字符串)

    我遇到过这个帖子 如何在Python中生成列表的所有排列 https stackoverflow com questions 104420 how to generate all permutations of a list in pyth
  • 将 pandas 多索引数据帧转换为嵌套字典

    我有一个 pandas 多索引数据框 我试图将其输出为嵌套字典 create the dataset data clump thickness 0 0 274 0 0 1 19 0 1 0 67 0 1 1 12 0 2 0 83 0 2
  • 如何在 Django 1.4 中自定义管理过滤器

    我是 Python 和 Django 开发的新手 我从社区提供的易于阅读的示例中学到了很多东西 但最近我想为 Django 附带的管理控制台实现一个自定义的管理过滤器 我进行了很多搜索 只发现了一些过时的方法来完成它 例如 Django 1
  • Selenium 上的切换窗口

    我在 Python 中使用 Selenium 和 PhantomJS 我需要打开一个新窗口并控制它 出于测试目的 我这样做 from selenium import webdriver driver webdriver PhantomJS
  • 配置 Flask 以正确加载 Bootstrap js 和 css 文件

    如何使用 Flask 中的 url for 指令来正确设置 以便使用 Bootstrap 和 RGraph 的 html 页面可以正常工作 假设我的 html 页面看起来像这样 部分片段
  • 有效地写入 pandas 中的多个相邻列

    使用 numpy ndarray 可以一次写入多个列 而无需先进行复制 只要它们相邻 如果我想写入数组的前三列 我会写 a 0 0 3 1 2 3 this is very fast a is a numpy ndarray 我希望在 pa
  • 如何避免在matplotlib中调用latex(输出到pgf)

    我使用 matplotlib 及其 pgf 后端来生成包含在 LaTeX 投影仪文档中的绘图 当我使用未定义的乳胶命令时 我遇到了麻烦 但对于我的应用程序 我不需要 matplotlib 来使用 Latex 生成标签或注释 我只想要正确的
  • Python 上每个系数具有特定约束的多元线性回归

    我目前正在数据集上运行多元线性回归 起初 我没有意识到我需要限制自己的体重 事实上 我需要有特定的正权重和负权重 更准确地说 我正在做一个评分系统 这就是为什么我的一些变量应该对音符产生积极或消极的影响 然而 当运行我的模型时 结果不符合我
  • 如何在Python中获取套接字的外部IP?

    当我打电话时socket getsockname 在套接字对象上 它返回我的机器的内部 IP 和端口的元组 但是 我想找回我的外部IP 最便宜 最有效的方式是什么 如果没有外部服务器的配合 这是不可能的 因为您和另一台计算机之间可能存在任意
  • Pandas 使用什么规则来生成视图和副本?

    我对 Pandas 在决定数据帧中的选择是原始数据帧的副本或原始数据帧的视图时使用的规则感到困惑 例如 如果我有 df pd DataFrame np random randn 8 8 columns list ABCDEFGH index
  • 检测反射 DLL 注入

    在过去的几年中 恶意软件 以及一些渗透测试工具 如 Metasploit 的 meterpreter 负载 已经开始使用反射 DLL 注入 PDF http www harmonysecurity com files HS P005 Ref
  • Google App Engine self.redirect() POST 方法

    在 GAE Python 中 使用 webApp 框架 调用 self redirect some url 通过 GET 方法将用户重定向到该 URL 是否也可以通过带有一些参数的 POST 方法进行 重定向 如果可以的话 怎样做 Than
  • 在Python中通过sys.stdout写入unicode字符串

    暂时假设一个人无法使用print 从而享受自动编码检测的好处 所以这给我们留下了sys stdout 然而 sys stdout太蠢了不做任何合理的编码 http bugs python org issue4947 现在人们阅读 Pytho
  • 通过过滤对 Pyspark Dataframe 进行分组

    我有一个数据框如下 cust id req req met 1 r1 1 1 r2 0 1 r2 1 2 r1 1 3 r1 1 3 r2 1 4 r1 0 5 r1 1 5 r2 0 5 r1 1 我必须观察客户 看看他们有多少要求 看看
  • matplotlib imshow() 和像素强度

    我试图了解矩阵的值是如何输入到 matplotlib 的imshow 函数确定灰度模式下像素的强度 考虑示例代码 import random import matplotlib pyplot as plt import matplotlib

随机推荐

  • 偏差在神经网络中的作用是什么? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我知道梯度下降和反向传播算法 我不明白的是 什么时候使用偏差很重要以及如何使用它 例如 当映射AND函数 当我使用两个输入和一个输出时 它
  • 有没有像 Python 的 easy_install 这样的 Java 包管理器? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有包管理器 http en wikipedia org wiki Package manager对
  • “此方法已被弃用”对于应用程序开发人员意味着什么

    我看到不少好旧有用的方法 http developer android com reference android webkit WebView PictureListener html onNewPicture 28android web
  • Web 服务或 Web 服务

    我正在创建一个应用程序 该应用程序将与安装 WCF Web 服务的单个服务器进行通信 我对这个过程有点陌生 想知道从长远来看 这两个选项中哪一个更适合处理大量用户的负载 1 在多核服务器上创建并安装单个 Web 服务 以便所有客户端应用程序
  • Chrome PDF 查看器下载按钮在 window.open() 选项卡上不起作用

    我正在开发一个项目 它将 http 请求发送到 spring boot 作为回应 我收到了带有 PDF 文件的流 我需要在新选项卡中打开此文件 并使用 Chrome PDF 查看器的所有功能 尤其是下载功能 这是我处理响应并打开包含收到的
  • 如何将 Ruby on Rails 生产挂载点包含在电子邮件的 url_helpers 中?

    tl dnr 我的页面链接很好 但链接到非页面文本 电子邮件 缺少生产应用程序安装点 detail 我的 RoR 应用程序在开发和生产中使用略有不同的 URL 在开发中 顶级实体是资源模型 http localhost 3000 ENTIT
  • 如何从 Intellij IDEA 中删除指向旧/丢失源的(虚拟)断点?

    使用 Intellij v14 和现在的 v15 我设置了断点来调试来自 Tomcat 7 中运行的 Web 应用程序的外部依赖项 通常是快照版本 的尚未发布的类 当我将该外部依赖项更改为发布版本时 重新编译项目并在调试模式下运行 即使断点
  • Swift Codable - 解析可以包含不同数据类型的 JSON 数组

    我正在尝试解析一个 JSON 数组 它可以是 config data name illuminate config title Blink name shoot config title Fire 或者它可以是以下类型 config dat
  • 在 Solaris 上构建 Boost

    Boost 会完全构建在 Solaris 上吗 在我去支付支持合同以将 Sun Studio 12 2 修补到最新版本之前 我想知道是否有人在这方面取得了成功 特别是 Proto Spirit 我遇到了一些错误 有些错误看起来已经在补丁中解
  • c# 将图像(缩放)绘制为图形,无法正确插值。修复?

    我有一个 1px 宽和一定高度的图像 我需要在其 OnPaint 事件上在控件的整个宽度上绘制此图像 我可以绘制它 但不正确 看起来当它拉伸它时 它实际上并没有填充所有像素 就好像插值关闭一样 有没有办法说 别再自作聪明了 直接画出来吧 我
  • NG-bootstrap 和 Angular 9 兼容性

    升级到 Angular 9 后 我收到以下与 ng bootstrap 相关的错误 src app shared Components form controls dropdown select dropdown select compon
  • 我需要解决 Excel 猜测数据类型问题

    我正在创建一个实用程序来将数据从 Excel 导入到 Oracle 数据库 我有一个固定的 Excel 文件模板 现在 当我尝试通过 Jet 提供程序和 ADO Net Ole 连接工具导入数据时 我发现以下问题 有一些列尚未导入 因为它们
  • 宏未显示在宏表中

    我正在 excel 2016 中编写 VBA 宏 我编写的带有参数的宏不会显示在宏表中 仅显示那些没有参数的宏 帮助 带参数的宏在宏框中不可见 因为将它们放在那里没有意义 如果它们需要参数来运行 则无法从宏框中运行它们 因为无法向相关宏提供
  • .net 对象平等

    假设我们有两个对象 o1 和 o2 定义为 System Object 在我的情况下 o1 和 o2 可以是以下任何类型 String Int32 Double Boolean DateTime DBNull 那么我如何检查 o1 和 o2
  • 无效的 Podfile 文件意外模板 EOS

    我已经与这个错误作斗争好几天了 试图开始一份新工作 尝试在 React Native cli 项目上运行 pod install 时遇到问题 我已经尝试了这里所有可能的解决方案 但不适用于我的 错误 Invalid Podfile file
  • 用于匹配“A-Z、a-z、0-9、_”和“.”的正则表达式

    我需要一个正则表达式 它只允许输入 A Z a z 0 9 字符和点 I tried A Za z0 9 但是 这没有用 我该如何修复它 A Za z0 9 从字符串的开头到结尾 匹配这些字符中的一个或多个 Edit 注意 and 匹配 a
  • 任意多边形中最大的内接矩形

    我使用 OpenCV Stitching 已经有一段时间了 现在我想做拼接的最后一步 裁剪图像 这就导致找到一般多边形中最大的内接轴平行矩形 我已经用谷歌搜索并找到了一些答案 如何在 OpenCV 中裁剪到最大的内部边界框 https st
  • Flex 中继器和事件监听器

    乍一看 Repeater 控件看起来非常强大 但现在我有了新的想法 手头的问题 为子级添加事件监听器 Repeater 对象绑定到 ArrayCollection 并对其进行迭代 为每个项目创建新的 Vbox 子项 现在 对于每个孩子 Re
  • 当目录存在时,htaccess 重定向无法重定向

    为了制作友好的 URL 以下是应用的 htaccess 代码 RewriteEngine On RewriteCond THE REQUEST php s NC RewriteRule F RewriteRule index php id1
  • 将包含 NaN 的 Pandas 列转换为 dtype `int`

    我将数据从 csv 文件读取到 Pandas 数据框 如下所示 对于其中一列 即id 我想将列类型指定为int 问题是id系列有缺失 空值 当我尝试投射时id在读取 csv 时将列转换为整数 我得到 df pd read csv data