我与3列的csv文件的工作分组数据是这样的:Python的 - 看起来读取CSV和列
timeStamp, value, label
15:22:57, 849, CPU pid=26298:percent
15:22:57, 461000, JMX MB
15:22:58, 28683, Disks I/O
15:22:58, 3369078, Memory pid=26298:unit=mb:resident
15:22:58, 0, JMX 31690:gc-time
15:22:58, 0, CPU pid=26298:percent
15:22:58, 503000, JMX MB
“标签”列中包含不同的值(比方说一共有5 ),其中包括空格,冒号和其他特殊字符。
我试图达到的目的是为每个指标绘制时间(无论是在同一个图表上还是在单独的图表上)。我可以用Matplotlib做到这一点,但我首先需要根据'标签'对[timeStamps, value]
对进行分组。
我查看了csv.DictReader
以使标签和itertools.groupby
按“标签”进行分组,但我正在努力以适当的“pythonic”方式做到这一点。
有什么建议吗?
感谢
什么是你期望的输出为你的榜样? – waitingkuo 2013-04-25 09:30:24
那么,鉴于我的输入样本都是混合的,我可能不得不为每个[标签]分开[times]和[values]。我最初的做法是读取标签,然后读取每行并根据标签存储每个[时间,值]对。但这似乎是一种非常低效的方式,这就是为什么我想查看字典和迭代器。 – 2013-04-25 09:45:59