Python 中带有键的 sort_values()

2023-12-02

我有一个数据框,其中列名称是时间(0:00、0:10、0:20、...、23:50)。现在,它们按字符串顺序排序(因此 0:00 是第一个,9:50 是最后一个),但我想在时间之后对它们进行排序(所以 0:00 是第一个,23:50 是最后一个)。

If time是一列,您可以使用

df = df.sort(columns='Time',key=float)

但是 1) 只有在以下情况下才有效time是列本身,而不是列名称,并且 2) sort() 已被弃用,因此我尝试避免使用它。

我正在尝试使用

df = df.sort_index(axis = 1)

但由于列名是字符串格式,因此它们根据字符串键进行排序。我试过了

df = df.sort_index(key=float, axis=1) 

但这给出了错误消息:

Traceback (most recent call last):
  File "<ipython-input-112-5663f277da66>", line 1, in <module>
      df.sort_index(key=float, axis=1)
TypeError: sort_index() got an unexpected keyword argument 'key'

有谁知道如何解决这个问题?如此烦人的是 sort_index() - 和 sort_values() 就此而言 - 没有关键参数!


尝试使用对列进行排序sorted内置函数并将输出传递到数据帧以进行索引。以下应该作为一个工作示例:

import pandas as pd


records = [(2, 33, 23, 45), (3, 4, 2, 4), (4, 5, 7, 19), (4, 6, 71, 2)]
df = pd.DataFrame.from_records(records, columns = ('0:00', '23:40', '12:30', '11:23'))
df
#    0:00  23:40  12:30  11:23
# 0     2     33     23     45
# 1     3      4      2      4
# 2     4      5      7     19
# 3     4      6     71      2

df[sorted(df,key=pd.to_datetime)]

#    0:00  11:23  12:30  23:40
# 0     2     45     23     33
# 1     3      4      2      4
# 2     4     19      7      5
# 3     4      2     71      6

我希望这有帮助

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

Python 中带有键的 sort_values() 的相关文章

  • pandas 数据框的最大大小

    我正在尝试使用读取一个有点大的数据集pandas read csv or read stata功能 但我不断遇到Memory Errors 数据帧的最大大小是多少 我的理解是 只要数据适合内存 数据帧就应该没问题 这对我来说不应该是问题 还
  • 将列表值转换为 pandas 中的行

    我有数据帧 其中一列具有相同长度的 numpy ndarray 值 df list 0 Out 92 array 0 0 0 0 29273096 0 30691767 0 27531403 我想将这些列表值转换为数据框并从 df iloc
  • lmfit模型拟合然后预测

    我正在领养lmfit进行曲线拟合并使用拟合模型进行预测 然而下面的代码并没有达到我想要的效果 能否请你帮忙 谢谢 import numpy as np from lmfit import Model def linearModel x a0
  • Asyncio:从未检索到任务异常的怪异

    假设我有一个简单的代码 import asyncio async def exc print 1 0 loop asyncio get event loop loop create task exc try loop run forever
  • matplotlib:渲染到缓冲区/访问像素数据

    我想使用 matplotlib 生成的图作为 OpenGL 中的纹理 到目前为止 我遇到的 matplotlib 的 OpenGL 后端要么不成熟 要么已经停止使用 所以我想避免使用它们 我当前的方法是将图形保存到临时 png 文件中 并从
  • argparse 不检查位置参数

    我正在创建一个脚本 它使用 argparse 接受位置参数和可选参数 我已经阅读了 Doug 的教程和 python 文档 但找不到答案 parser argparse ArgumentParser description script t
  • 提高光线追踪命中功能的性能

    我有一个简单的 python 光线追踪器 渲染 200x200 的图像需要 4 分钟 这对于我的口味来说绝对是太多了 我想改善这种情况 几点 我为每个像素发射多条光线 以提供抗锯齿功能 每个像素总共发射 16 条光线 200x200x16
  • matplotlib vlines 图中未应用 y 轴的最小值

    我正在 matplotlib 中绘制 vlines 图 数据集中的所有 y 值如下 gt 0 我希望 y 轴最底部的刻度能够读取0 但相反 我得到 500 这是代码 usr bin env python import numpy as np
  • 类变量:“类列表”与“类布尔值”[重复]

    这个问题在这里已经有答案了 我不明白以下示例的区别 一次类的实例可以更改另一个实例的类变量 而另一次则不能 示例1 class MyClass object mylist def add self self mylist append 1
  • 将 str.contains 映射到 pandas DataFrame

    python 初学者 我正在寻找创建字符串的字典映射以及关联的值 我有一个数据框 想要创建一个新列 如果字符串匹配 则会将该列标记为 x df pd DataFrame comp dell notebook dell notebook S3
  • 如何将 django ModelForm 字段显示为不可编辑

    接受我的初步教训django ModelForm 我想让用户能够编辑博客中的条目 BlogEntry has a date postedTime title and content 我想向用户展示一个编辑表单 其中显示所有这些字段 但仅包含
  • 在 4K 屏幕上使用 Matplotlib 和 TKAgg 或 Qt5Agg 后端

    我在 Ubuntu 16 04 上使用 Matplotlib 2 0 和 Python 3 6 来创建数据图 电脑显示器的分辨率为 4k 分辨率为 3840x2160 绘图数字看起来非常小 字体也很小 我已经尝试过TKAgg and Qt5
  • python 中的 F 字符串前缀给出语法错误[重复]

    这个问题在这里已经有答案了 我有一个名为 method 的变量 它的值是 POST 但是当我尝试运行时print f method method is used 它不断在最后一个双引号处给出语法错误 我找不到它这样做的原因 我正在使用 py
  • 如何将Python包从旧版本安装到新版本?

    我正在使用 python 3 7 最近在 Linux 中安装了 python 3 8 是否有任何 bash 命令或脚本可以获取 3 7 的所有软件包列表并在 3 8 版本中一一安装 我想避免每个包裹都手工完成 注意 我将它们安装在我的系统中
  • 带 Qt 的菜单栏/系统托盘应用程序

    我是 Qt PyQt 的新手 我正在尝试制作一个应用程序 其功能将从菜单栏 系统托盘执行 这里展示了一个完美的例子 我找不到关于如何做到这一点的好资源 有人可以建议吗 Thanks 我认为您正在寻找与QMenu and QMainWindo
  • 为数据集生成随机 JSON 结构排列

    我想生成 JSON 结构的许多不同排列作为同一数据集的表示 最好不需要对实现进行硬编码 例如 给定以下 JSON name smith occupation agent enemy humanity nemesis neo 应该产生许多不同
  • 如何仅读取 CSV 文件每行的第一列 [重复]

    这个问题在这里已经有答案了 如何在Python中读取CSV文件每行的第一列 我的数据是这样的 1 abc 2 bcd 3 cde 我只需要循环第一列的值 另外 当我在 calc 中打开 csv 文件时 每行中的数据都在同一个单元格中 这正常
  • 将函数按元素应用于两个 DataFrame

    如何应用函数z ij f x ij y ij 来自数据框X and Y相同大小并将结果保存到 DataFrameZ 这取决于你有什么样的功能 很多功能已经被矢量化为数据框 例如 等等 所以对于这些功能 你可以简单地做Z X Y or Z X
  • 如何使用 keras.backend.gradients() 获取梯度值

    我试图获得 Keras 模型的输出相对于模型输入 x 而不是权重 的导数 似乎最简单的方法是使用 keras backend 中的 梯度 它返回梯度张量 https keras io backend https keras io backe
  • 如何使 Django 自定义管理命令参数不再需要?

    我正在尝试在 django 中编写自定义管理命令 如下所示 class Command BaseCommand def add arguments self parser parser add argument delay type int

随机推荐

  • 拖动后获取点信息

    IPython Notebooks 中有用于交互式 matplotlib 绘图的令人惊叹的 mpld3 mpld3 还具有插件功能 其中一个对我来说特别有趣 您可以在图中选择一个点并将其拖动 它如下所示 http mpld3 github
  • Java:无法将 Gridlayout 应用于 Jscrollpane。获取 获取 java.lang.ClassCastException

    我使用 Gridlayout 将 4 个元素放置在一行中 首先我有一个 JPanel 一切工作正常 对于行数变大并且我必须能够向下滚动的情况 我对其进行了一些更改 现在我有了我的JPanel与一个JScrollPane添加了它 我使用了相同
  • jqgrid日期排序和格式化

    我需要以两种格式显示日期 例如 mm dd yyyy 和 mm dd yyyy hh mm ss 我发现我们可以在 colmodel 中使用 formatoptions formatoptions srcformat ISO8601Long
  • 将二进制数分成五位数字的组

    在 python 中 有什么巧妙的技巧可以将二进制数分成五位数字的组吗 00010100011011101101110100010111 gt 00010 00110 10111 编辑 我想编写一个密码 编码器来生成 易于通过电话读取 的令
  • Next.js 页面和 API 调用的不同 404 页面

    是否可以在 Next js 中配置两个不同的 404 页面 一个用于渲染页面 另一个用于 API 路由 我希望 API 调用的 404 页面以 JSON 格式返回 而所有其他页面则以 HTML 格式返回 是的 您只需在 api 页面路由下创
  • 服务器发送事件和asp经典

    我制作了一个 ASP 脚本 其中包含服务器发送事件所需的所有标头 客户端脚本正在运行 我用 PHP 脚本对其进行了测试 效果很好 ASP 脚本可以工作 如果您从 URL 行调用它 它会返回预期的消息 但当 javascript 调用它时 元
  • 在 matplotlib 中的单独图中绘制子图轴[重复]

    这个问题在这里已经有答案了 假设我有以下代码 修改版本matplotlib gridspec 教程 import matplotlib pyplot as plt def make ticklabels invisible fig for
  • 使用交叉验证 (CV) 计算 scikit-learn 多类 ROC 曲线

    我想用 ROC 曲线评估我的分类模型 我正在努力计算交叉验证数据集的多类 ROC 曲线 由于交叉验证 训练集和测试集没有划分 在下面 您可以看到我已经尝试过的代码 scaler StandardScaler with mean False
  • E/Web 控制台 (8272):在视图分页器中加载 Web 视图时,未捕获引用错误:函数名称未定义:1

    我正在尝试在视图寻呼机中加载网络视图 public View onCreateView LayoutInflater inflater ViewGroup container Bundle savedInstanceState View v
  • 我可以运行 ASPX 并 grep 结果而不发出 HTTP 请求吗?

    如何在没有 URL 和 HTTP 的情况下对一个简单的 ASP NET 文件进行函数调用 并捕获它生成的字节流 更多背景信息 我需要某种模板可以在里面放入一些逻辑 以呈现一些像文本文件一样的 INI 我放弃了那些从Java移植的库 并提出了
  • 将选项卡栏图标颜色从默认蓝色更改为

    我试图将选项卡栏图标颜色从默认的蓝色更改为红色 但收到此错误 程序中出现杂散 342 我在 void recolorItemsWithColor 以及实现部分收到错误 有办法解决这个错误吗 是否有另一种方法可以将标签栏图标从默认蓝色更改为其
  • 将弧度转换为度、分和秒

    我正在寻找一种将 C 语言中的小数转换为度数的方法 例如 C 语言中的 asin 函数返回一个十进制数 但我需要该数字以度 分 秒为单位 例如1 5 就是 1 30 0 The asin函数返回弧度 圆中有 2 弧度 圆有 360 度 一度
  • 如何使用 RavenDB 中的自定义 JSON.NET 转换器反序列化为动态 DLL 中的类型?

    我的 RavenDB 对象是根据动态加载的 DLL 中的类型创建的 我无法将 DLL 加载到当前的执行上下文中AppDomain 因此 JSON 反序列化器无法找到类型 我将如何使用定制转换器使用运行时加载的程序集中的类型 NB I tri
  • 如何创建一个动态相等实现,您可以在其中传递要比较的属性名称?

    假设我有一个具有以下属性的对象 Person public class Person public int ID get set public int EmployeeNo get set public string JobDescript
  • 矢量::插入分段错误

    我有一堂这样的课 classA public classA Here I am doing something but nothing related to vector void updateVec int idx int value H
  • 水平对齐三张图像(只能将它们垂直对齐)

    我似乎真的缺少一些关于如何使用 CSS 在屏幕上的一个块中水平排列三个图像的信息 我似乎只能将它们在页面上排成一长行 当我真的希望它们以水平线穿过屏幕时 我的 div 哪里做错了 或者也许我在 CSS 中被引入歧途 有任何想法吗 太感谢了
  • 为什么在 C++ 中输入 void main() 不好 [重复]

    这个问题在这里已经有答案了 可能的重复 void main 和 int main 之间的区别 Why is void main return void bad 有一天 我输入了此内容 有人向我指出这样做是错误的 我很困惑 我这样写已经有一段
  • 如何在顶点着色器中使用计时器来为 OpenGL 中的点大小设置动画

    我正在尝试实现一个点云 其中不同点的大小应根据与其相关的不确定性值而变化 比方说 如果这个值为零 则大小应该是恒定的 如果它接近 1 则这些点的半径应该变化得越来越大 首先 点的大小应该增加 并且在达到最大值后 它们应该减小直到最小值 依此
  • C++-单例类

    单例类可以被继承吗 如果是 那我们该怎么办呢 编辑 我的意思是说 如果我们有一个使用单例设计模式的类 那么它可以被继承吗 单例有私有构造函数 因此继承是不可能的 除此之外 单例具有实例化私有实例成员的静态方法 并且由于您无法覆盖静态方法 因
  • Python 中带有键的 sort_values()

    我有一个数据框 其中列名称是时间 0 00 0 10 0 20 23 50 现在 它们按字符串顺序排序 因此 0 00 是第一个 9 50 是最后一个 但我想在时间之后对它们进行排序 所以 0 00 是第一个 23 50 是最后一个 If