用1分钟频率Python在时间序列中删除任何一天的Nan值



我有一个频率为1分钟的时间序列数据帧。我需要放弃任何一天有一个或多个nan值。例如,在以下df中,需要删除2012-10-15天和2012-10-25天。

import pandas as pd
index=pd.date_range(start='2012-10-15', end='2012-10-25', freq='1Min')
df=pd.DataFrame(range(len(index)), index=index, columns=['Number'])
df.iloc[1]=np.nan
df.iloc[-2]=np.nan
print(df)

您可以使用isnadf.index.normalize():提取的日期检查nangroupby.transform()

mask = df['Number'].isna().groupby(df.index.normalize()).transform('any')
df[~mask]

相关内容

最新更新