我有一个包含潮汐数据的文本文件,前几行是:
Thursday 4 January,11.58,0.38 meters
Thursday 4 January,16.95,0.73 meters
Thursday 4 January,23.68,0.02 meters
Friday 5 January,6.48,0.83 meters
Friday 5 January,12.42,0.33 meters
等,并继续5天以上的数据。你知道吗
我已将此数据转换为嵌套列表,因此它现在打印为:
[['Thursday 4 January', 11.58, 0.38], ['Thursday 4 January', 16.95, 0.73], ['Thursday 4 January', 23.68, 0.02], ['Friday 5 January', 6.48, 0.83], ['Friday 5 January', 12.42, 0.33].....]
以此类推,对于文件中的每一行数据,每个列表的第一个索引是字符串中的日期,第二个和第三个索引是浮动的。你知道吗
对于每个具有匹配的[0]索引(当天)的嵌套列表,我需要找到每个匹配的嵌套列表[2]索引(潮位)的最低和最高浮动,并将它们打印到每天的屏幕上。你知道吗
例如:
Thursday 4 January: 0.02 meters at lowest and 0.73 meters at highest
Friday 5 January: 0.33 meters at lowest and 0.83 meters at highest
因为列表已经按天排序了,所以我想只计算匹配的名称,然后手动进行比较,例如,对于“1月4日星期四”,因为有3个,所以我只比较split\u tides[0-2][2],找到最小值和最大值,然后每天重复。但我认为一定有一种方法可以自动比较具有匹配字符串的嵌套列表。你知道吗
谢谢你的帮助。你知道吗
编辑:文本文件的图像
首先,您可以使用
groupby
按日期分组,sort
按第三个索引高度分组。此处为示例代码:输出:
顺便说一下,在date中使用
groupby
之前,请确保您的数据是按日期排序的。你知道吗希望这能对你有所帮助,如果你有进一步的问题,请发表评论。:)
下面是对您有帮助的片段
输出:
日期 1月5日星期五0.83 1月4日星期四0:73
日期 1月5日星期五0:33 1月4日星期四0:02
相关问题 更多 >
编程相关推荐