为了账号安全,请及时绑定邮箱和手机立即绑定

有没有办法按数字字符串列对熊猫数据框进行排序?

有没有办法按数字字符串列对熊猫数据框进行排序?

饮歌长啸 2023-03-08 15:09:01
假设我的数据框 df 如下value_id = ['1_1', '1_2', '1_5', '10_1', '2_2', '3_2']value_age = [28, 34, 54, 24, 12, 56]df = pd.DataFrame({'id':value_id, 'age':value_age})我想根据第一列(即 id)对这个数据框进行排序。我想要这样的输出id     age1_1    281_2    341_5    542_2    123_2    5610_1   24
查看完整描述

1 回答

?
慕森王

TA贡献1777条经验 获得超3个赞

您可以设置id为索引并使用,并与自定义参数一起df.reindex使用。sortedkey


def f(x):

    v, v1 = map(int, x.split('_'))

    return v, v1


df.set_index('id').reindex(sorted(df.id,key=f))


      age

id

1_1    28

1_2    34

1_5    54

2_2    12

3_2    56

10_1   24


查看完整回答
反对 回复 2023-03-08
  • 1 回答
  • 0 关注
  • 73 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信