python - 将 Pandas 数据框转换为所需的 python 字典

标签 python python-3.x pandas

我有一个采用下面给出的格式的 pandas 数据框,时间列将是动态的,它将在 00:00 到 23:00 之间,间隔 30 分钟

name        start_time      end_time        10:00:00    10:30:00
student1    1598758200000   1598761800000   False       False
student2    1598779800000   1598790600000   False       False
student3    1598765400000   1598770800000   False       True
student4    1598248800000   1598252400000   False       True
student5    1598293800000   1598297400000   False       False

我需要将此数据框转换为如下的 python 字典

输出:

{
    "10:00:00":[
        "student1",
        "student2",
        "student3",
        "student4",
        "student5"
    ],
    "10:30:00":[
        "student1",
        "student2",
        "student5"
    ]
}

最佳答案

可能不是最有效的,但这是一种方法(让我们将您的数据框称为 my_df):

my_dict = dict([(k,[x for i,x in enumerate(my_df['name']) if not my_df[k][i]]) for k in my_df.columns if k not in ['name', 'start_time', 'end_time']])

关于python - 将 Pandas 数据框转换为所需的 python 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63740611/

相关文章:

python - 在 Python 中为 Caffe 创建 LMDB 数据库文件时出错

python - 如何从图像中提取平滑的骨架

python-3.x - “extras_require”必须是一个字典,其值是包含有效项目/版本要求说明符的字符串或字符串列表

python - 如果它不是函数,则将项目添加到列表中

python - 将列表/数组与数据框列进行比较?

Python 元组数组

python-3.x - 在 Python 3 中将十进制数转换为二进制数

python - 从日期获取月份中的第几周列

python - 如何将带有无效字符(重音符号)的 Pandas Dataframe 与数组匹配?

python-2.7 - Pandas 使用字符绘制两个变量