【问题标题】:Counter python 3计数器 python 3
【发布时间】:2017-12-29 06:10:57
【问题描述】:

我读入了带有pandas.read_csv() 的[数据集(https://outcomestat.baltimorecity.gov/Transportation/100EBaltimoreST/k7ux-mv7u/about),没有修改参数。

  • stolenVehicleFlag 列中有 0、1 和 NaN。
  • np.nannp.NaN 相比,nans 返回False
  • 列是输入numpy.float64 所以我尝试输入 np.nans 从他们通常的浮动类型到那个,但它仍然 返回False
  • 我也尝试使用Counter 将它们卷起来,但每个 nan 都会返回它的 自己的计数为 1。

    关于这是如何发生的以及如何处理它的任何想法?

【问题讨论】:

  • 另外,尝试了数学的 nan 对象,该 obj 转换为 np.float64 并且仍然是 False。
  • 我认为你可以检查missing data,如果需要检查NaNs 使用isnull 函数,如print (df['stolenVehicleFlag'].isnull())
  • 请贴出你目前尝试过的代码
  • @jezrael 请发表您的评论作为答案,因为该链接使我在 nan 文档中看到 np.nan == np.nan => False,这可以解释为什么 nans 被解释为 numpy 浮点数彼此不相等,也不会被计数器卷起,但被解释为字符串的会因为它们只是“nan”。谢谢
  • @user85779 - 很高兴能提供帮助。我也创建了答案,但我不明白to roll them up but each nan returns its own count of 1.你能解释更多吗?

标签: python-3.x pandas numpy nan


【解决方案1】:

我不确定你期望做什么,但如果你想摆脱这个 NaN 值,考虑到“df”你的数据帧使用,这可能会有所帮助:

df.dropna()

这将帮助您处理 NaN 值,
你可以在这里查看更多信息:pandas.DataFrame.dropna

【讨论】:

  • 我将该列放入 Counter 对象中,以获取每个值的计数,包括查看有多少 null/nan 条目。使用此列,Counter 会在 nan:1 的对象中生成数千个单独的条目,而不是将它们滚动到 nan:11098。所有其他列将 nans 向上滚动并计算总数。
猜你喜欢
  • 2023-03-05
  • 1970-01-01
  • 2017-03-26
  • 1970-01-01
  • 2013-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-10
相关资源
最近更新 更多