python – 断言pandas数据帧通过装饰器有一个日期时间索引
作者:互联网
如何添加装饰器,声明函数的传入pandas dataframe参数具有日期时间索引?
我看过包engarde和validada,但还没找到任何东西.我可以在函数内部进行检查,但更喜欢装饰器.
解决方法:
正如@PadraicCunningham所写,使用functools.wraps
创建一个并不太难:
import functools
def assert_index_datetime(f):
@functools.wraps(f)
def wrapper(df):
assert df.index.dtype == pd.to_datetime(['2013']).dtype
return f(df)
return wrapper
@assert_index_datetime
def fn(df):
pass
df = pd.DataFrame({'a': [1]}, index=pd.to_datetime(['2013']))
fn(df)
标签:python,decorator,pandas,datetimeindex 来源: https://codeday.me/bug/20190608/1201529.html