Statsmodels layer in AWS Lambda



我正试图为代码的统计模型添加一个aws层。

我通过pip安装了statsmodels,但当我压缩它时,它有96.0 MB,我无法创建Lambda层。

有没有办法安装较轻版本的模块?

用于创建Lambda的代码:

import statsmodels as sm
from statsmodels.stats.power import TTestIndPower
def lambda_handler(event, context):
    
    print(event)
    
    sample1_avg = event['sample1_avg']
    pop_avg = event['pop_avg']
    pop_stdev = event['pop_stdev']
    sample1_num = event['sample1_num']
    power_analysis = TTestIndPower()
    effct_size = (sample1_avg-pop_avg)/pop_stdev
    power = power_analysis.solve_power(effect_size = effct_size,
                                   nobs1=sample1_num,
                                         power=None,
                                         alpha = 0.05,
                                  alternative='larger')
    
    return { 
        'power': power    
    }

您可以使用docker映像来创建Lambda函数。在您的情况下,您需要将statsmodel添加到requirements.txt文件中。

文档:https://docs.aws.amazon.com/lambda/latest/dg/python-image.html

最新更新