用python解析和提取文件中的数据
我在这个话题上搜索了很多,到目前为止学到了很多。我还是python新手,我知道有一种简单的方法可以使用csv模块解析数据。因此,我有如下数据:用python解析和提取文件中的数据,python,parsing,csv,Python,Parsing,Csv,我在这个话题上搜索了很多,到目前为止学到了很多。我还是python新手,我知道有一种简单的方法可以使用csv模块解析数据。因此,我有如下数据: 日期最大造币厂Pcpn雪地Snwg 1948年1月1日34 13 0.00 0.0吨 1948年2月1日46 29 0.01 0.0吨 1948年3月1日38 16吨 1948年4月1日38 15 0.00 0.0吨 1948年5月1日44 15 0.00 0.0吨 1948年6月1日42 23 0.00 0.0吨 这是记录结束前一年中每天的天气数据。
日期最大造币厂Pcpn雪地Snwg
1948年1月1日34 13 0.00 0.0吨
1948年2月1日46 29 0.01 0.0吨
1948年3月1日38 16吨
1948年4月1日38 15 0.00 0.0吨
1948年5月1日44 15 0.00 0.0吨
1948年6月1日42 23 0.00 0.0吨
这是记录结束前一年中每天的天气数据。大多数时候,记录的结尾是现在。我可以解析它并从中提取数据,但我的主要问题和原因是如何根据特定日期提取和保存数据
例如,如果我想要记录中所有年份中发生在4月25日的最高温度,以及它发生的年份,我如何准确地隔离特定日期,并且仅在该日期使用max()或min(),而不是一年中的所有日期?我想让我的程序搜索一年中的每个日期,找到每个日期的最大值和最小值以及发生的年份,并保存它们以供以后使用
最后,我想得到每个位置的最高和最低最大值和最小值(最高最大值、最低值、最高值、最低值),每个值出现的年份,并将特定日期组合在一起。这样,我就有了一个一年365天的文件,其中包含位置和4个极端值,以及每一年发生的年份。我可以处理把这些地点放在一起并创建新文件,但现在,我需要弄清楚如何获得一年中每一天的极端值
说到做到,我的输出标题应该是这样的,并且一年中的每一天都有一个文件:
位置高最高年份低最高年份高最低年份低最低年份
试一试:
test.csv:
Date,MaxT,MinT,Pcpn,Snow,Snwg
01/01/1948,34,13,0.00,0.0,T
01/02/1948,46,29,0.01,0.0,T
01/03/1948,38,16,T,T,T
01/04/1948,38,15,0.00,0.0,T
01/05/1948,44,15,0.00,0.0,T
01/06/1948,42,23,0.00,0.0,T
读取csv,将日期设置为索引
In [1]: import pandas as pd
In [4]: df = pd.read_csv('test.csv').set_index('Date')
In [5]: df
Out[5]:
MaxT MinT Pcpn Snow Snwg
Date
01/01/1948 34 13 0.00 0.0 T
01/02/1948 46 29 0.01 0.0 T
01/03/1948 38 16 T T T
01/04/1948 38 15 0.00 0.0 T
01/05/1948 44 15 0.00 0.0 T
01/06/1948 42 23 0.00 0.0 T
Pandas
提供一个很好的结构DataFrame
来操作数据。例如,要获取最大值,请执行以下操作:
In [9]: index = df['MaxT'].idxmax()
In [11]: index, df['MaxT'][index]
Out[11]: ('01/02/1948', 46)
学习熊猫应该需要一些时间。
如果你的工作在这些数据上非常可靠,那就值得学习。熊猫模块就是你想要的。为什么你不能使用数据库呢?。看来这是符合你要求的好选择。我同意@thavan。或者,更简单的是,您可以将数据导入电子表格应用程序。但我有数百个位置的数据长达125年,我想找到每个位置的值,然后将结果合并到366个不同的文件中,用于每日极端值。您可以修改示例以使用OP的分隔符。