数据缺失怎么顺延与数据分段求值


import pandas as pd
import glob
import os

os.chdir('path/stock_hfqqa')  

summ=pd.DataFrame()

for file in glob.glob('*.csv'):
    fname='.'.join(file.split('.')[0:2])

    df=pd.read_csv(file,dtype={'trade_date':'str'})
    df['trade_date']=pd.to_datetime(df['trade_date'])
    df['year']=df['trade_date'].dt.year

    min_row=df[df['year']==2020]['close'].idxmin()
    end_date_min=df.iloc[min_row]['trade_date']
    start_date_min=end_date_min-pd.Timedelta(days=100)
    mindf=df.loc[(df['trade_date']>=start_date_min) & (df['trade_date']<=end_date_min)]
    tempdf=mindf.head(1).copy()
    tempdf['date_start']=start_date_min
    summ=summ.append(tempdf,ignore_index=True)
    filemin=fname+'_min'+'.xlsx'
    mindf.to_excel(filemin,index=False)

    max_row=df[df['year']==2020]['close'].idxmax()
    end_date_max=df.iloc[max_row]['trade_date']
    start_date_max=end_date_max-pd.Timedelta(days=100)
    maxdf=df.loc[(df['trade_date']>=start_date_max) & (df['trade_date']<=end_date_max)]
    tempdf=maxdf.head(1).copy()
    tempdf['date_start']=start_date_max
    summ=summ.append(tempdf,ignore_index=True)   
    filemax=fname+'_max'+'.xlsx'
    maxdf.to_excel(filemax,index=False)

summ=summ[['ts_code','date_start','trade_date','close']]
summ.columns=['ts_code','date_start','date_end','close']
summ.to_excel('bbbb.xlsx',index=False)

计算出的start_date_min日期当日可能有数据也可能没数据,当没数据就想顺延到有数据的日期,请问怎么改代码,谢谢。。。。
还有个问题,有知道的一起指教,就是怎么求每只code每年的最低最高价,一年一年算很麻烦,就想一下算所有的,一并谢了。。。

讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!