data-structures – Python:从列表中填充下三角矩阵
发布时间:2020-12-20 13:35:40 所属栏目:Python 来源:网络整理
导读:我有csv格式的机票可用性的离散时间数据.这用于表示出发和到达时间窗口组合的票证可用性.说我的一天分为4个时段 – 12:01 AM to 6:00 AM,6:01 AM to 12:00 PM,12:01 PM to 6:00 PM,6:01 PM to 12:00 AM 1意味着有出发和到达组合的门票,否则为0.对于此示例,假
我有csv格式的机票可用性的离散时间数据.这用于表示出发和到达时间窗口组合的票证可用性.说我的一天分为4个时段 –
12:01 AM to 6:00 AM,6:01 AM to 12:00 PM,12:01 PM to 6:00 PM,6:01 PM to 12:00 AM 1意味着有出发和到达组合的门票,否则为0.对于此示例,假设票证可用于所有出发到达组合,csv文件将具有以下数据: 1,1,1 此数据用于表示此矩阵(请注意,某些组合在此处变为零,因为它们是24小时不合逻辑的时间组合): Departure time period 12:01 AM to 6:00 AM | 6:01 AM to 12:00 PM | 12:01 PM to 6:00 PM | 6:01 PM to 12:00 AM| Arrival time period ------------------- | ---------------------|---------------------|---------------------| 12:01 AM to 6:00 AM 1 | 0| 0| 0| 6:01 AM to 12:00 PM 1 | 1| 0| 0| 12:01 PM to 6:00 PM 1 | 1| 1| 0| 6:01 PM to 12:00 AM 1 | 1| 1| 1| csv文件有多天这个数据.我已将此数据作为字典读入,其中日期为关键字,可用性组合为列表.数据处理在Python 2.7中完成.在某一天,我现在可以使用日期键检索可用性列表. 现在,我有两个问题: >如何将数据转换为矩阵 我假设在csv中读取字典然后将可用性元素存储在列表中是一种方法,因为它看起来相当简单.如果您觉得有更聪明的方法可以修改方法. 有什么想法吗?!? 解决方法import numpy as np import matplotlib.pyplot as plt data = [1,1] arr = np.zeros((4,4)) indices = np.tril_indices(4) arr[indices] = data print(arr) # array([[ 1.,0.,0.],# [ 1.,1.,1.]]) plt.imshow(arr,interpolation='nearest',cmap=plt.get_cmap('RdYlGn')) plt.show() 地块 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |