【问题标题】:Python: How to sort elements of a set in column valuePython:如何对列值中的集合元素进行排序
【发布时间】:2022-11-04 22:52:10
【问题描述】:

我有一个熊猫数据框,其中一列(状态)具有set 作为值。

                         box_name   scheduled_time                                   status
0                FIN_D1_BATCH_JOB         21:00:00                          {'NOT_STARTED'}
1       FIN_CREDIT_BATCH_PHIL_JOB         01:10:00                            {'COMPLETED'}
2       FIN_CREDIT_BATCH_CAND_JOB         00:30:00                            {'COMPLETED'}
3        FIN_DEBIT_BATCH_PHIL_JOB         01:00:00                            {'COMPLETED'}
4        FIN_DEBIT_BATCH_CAND_JOB         21:00:00                            {'COMPLETED'}
5        FIN_DEBIT_BATCH_RUSS_JOB         01:00:00                            {'COMPLETED'}
6      FIN_DEBIT_EM_OTC_BATCH_JOB         05:00:00                {'RUNNING','NOT_STARTED'}
7               FIN_SIT_BATCH_JOB         11:00:00  {'NOT_STARTED', 'RUNNING', 'COMPLETED'}

我需要对集​​合的值进行排序,即数据框的状态列应如下所示:

                         box_name   scheduled_time                                   status
0                FIN_D1_BATCH_JOB         21:00:00                          {'NOT_STARTED'}
1       FIN_CREDIT_BATCH_PHIL_JOB         01:10:00                            {'COMPLETED'}
2       FIN_CREDIT_BATCH_CAND_JOB         00:30:00                            {'COMPLETED'}
3        FIN_DEBIT_BATCH_PHIL_JOB         01:00:00                            {'COMPLETED'}
4        FIN_DEBIT_BATCH_CAND_JOB         21:00:00                            {'COMPLETED'}
5        FIN_DEBIT_BATCH_RUSS_JOB         01:00:00                            {'COMPLETED'}
6      FIN_DEBIT_EM_OTC_BATCH_JOB         05:00:00                {'NOT_STARTED','RUNNING'}
7               FIN_SIT_BATCH_JOB         11:00:00  {'COMPLETED', 'NOT_STARTED', 'RUNNING'}

我试过df['status'] = sorted(df['status'].values),但没用。

【问题讨论】:

  • 集合本质上是无序的。您可以将它们转换为列表吗?

标签: python pandas


【解决方案1】:

Set 是一种无序的集合。

df["status"] = df["status"].apply(lambda x: sorted(list(x)))

【讨论】:

    猜你喜欢
    • 2021-02-27
    • 2017-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-04
    • 2013-06-10
    • 2015-06-21
    相关资源
    最近更新 更多