【问题标题】:Column <x> has dtype object, cannot use method 'nsmallest' with this dtype列 <x> 具有 dtype 对象,不能对这个 dtype 使用方法“nsmallest”
【发布时间】:2019-09-03 18:29:00
【问题描述】:

我在桌子上尝试的任何查询都抱怨

Column 'time' has dtype object, cannot use method 'nsmallest' with this dtype

但是,当我查看查询的表源时,架构报告的类型为 long。在这种情况下,我正在查询宝藏数据。

那么如何按列值和最小的列值对我的数据框进行排序?

【问题讨论】:

  • df.dtypes 为该列报告了什么?是对象吗?
  • 也许df['time'] = pd.to_datetime(df['time']) 会有所帮助。
  • df.dtypes 说每一列都是一个对象,但是,数据源说每一列都是一个字符串或一个长整数。

标签: pandas dataframe


【解决方案1】:

你的排序方式:

df.sort_values(['time'], inplace=True)

如果你使用:

df['time'].sort_values(ascending=True).head(n)

你也应该得到前 n 个最小值。

【讨论】:

    猜你喜欢
    • 2022-01-25
    • 1970-01-01
    • 2017-09-15
    • 2019-06-16
    • 2016-05-14
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 2021-08-21
    相关资源
    最近更新 更多