Python 3.x 历年同月日数据

Python 3.x 历年同月日数据,python-3.x,pandas,time-series,Python 3.x,Pandas,Time Series,我有一段时间内同一个月的数据,我试图绘制motnh日的平均值,但我不知道怎么做。 获取数据帧的主要代码: import requests import pandas as pd from bs4 import BeautifulSoup as bs import matplotlib.pyplot as plt from datetime import date, timedelta from datetime import datetime inicio = date(1973, 1, 1

我有一段时间内同一个月的数据,我试图绘制motnh日的平均值,但我不知道怎么做。

获取数据帧的主要代码:

import requests
import pandas as pd
from bs4 import BeautifulSoup as bs
import matplotlib.pyplot as plt
from datetime import date, timedelta
from datetime import datetime

inicio = date(1973, 1, 1)
#inicio = date(2019, 2, 15)
#final = date(2000, 10, 10)
final = date(1974, 3, 1)
delta = timedelta(days=1)
años=[]
links=[]
while inicio <= final:
    fechas=inicio.strftime("%Y-%m-%d")
    #años.append(datetime.strptime(fechas, '%Y-%m-%d').date())
    años.append(fechas)
    url='http://weather.uwyo.edu/cgi-bin/sounding?region=samer&TYPE=TEXT%3ALIST&YEAR={}&MONTH={}&FROM={}12&TO={}12&STNM=80222'.format(fechas[0:4],fechas[5:7],fechas[8:10],fechas[8:10])
    links.append(url)
    inicio += delta


d = dict(zip(años, links))
df1=pd.DataFrame(list(d.items()), columns=['Fecha', 'url'])
df1.set_index('Fecha', inplace=True)

Enero=pd.DataFrame()
Febrero=pd.DataFrame()

for i in df1.index:
    if i[5:7]=='01':
        Enero = Enero.append(df1.loc[i], ignore_index=False)
    elif i[5:7]=='02':
        Febrero = Febrero.append(df1.loc[i], ignore_index=False)

labels = ['PRES', 'HGHT', 'TEMP', 'DWPT', 'RELH', 'MIXR', 'DRCT', 'SKNT', 'THTA', 'THTE', 'THTV']

def reques(url):
    try:
        results = []
        peticion=requests.get(url)
        soup=bs(peticion.content, 'lxml')
        pre = (soup.select_one('pre')).text
        for line in pre.split('\n')[4:-1]:
            #print (line)
            if '--' not in line:
                row = [line[i:i+7].strip() for i in range(0, len(line), 7)]
                results.append(row)

            else:
                pass

        df5=pd.DataFrame.from_records(results, columns=labels)
        #return x
        return df5

    except AttributeError:
        pass

SuperDF = pd.DataFrame()
SuperDF = pd.DataFrame(columns=labels)


startTime = datetime.now()
sin_datos=[]
for i in Febrero['url']:

    try:

        x=reques(i)
        df2=x
        y=str(df1[df1['url']==i].index.values)
        df2.index = [y] * len(x)
        SuperDF=SuperDF.append(x)


    except TypeError:
        sin_datos.append(df1[df1['url']==i].index.values)
        print (df1[df1['url']==i].index.values)



SuperDF.index= SuperDF.index.map(lambda x: x.lstrip("['").rstrip("]''"))
SuperDF.index = pd.to_datetime(SuperDF.index)
SuperDF=SuperDF.apply(pd.to_numeric)
SuperDF
但我犯了这个错误

KeyError: '02'
当我度过一年的时候它就起作用了,但是我需要一个月的平均天数。任何帮助都将不胜感激。

我现在有一个错误:AttributeError:'DatetimeIndex'对象没有属性'dt',现在我有了这个,如果我删除'eq'use
df11.index.day==2
我有一个true和false数组,但我想要的是第二个月每天平均值的曲线图,丢弃years@LuisMedina如何从只有你自己的数据库中读取数据,使问题重现?
KeyError: '02'