有没有一种方法可以优化此代码以使其运行得更快?

时间:2019-07-11 15:50:49

标签: python optimization multiprocessing

您好,我在一个应用程序中工作,我正在使用这段代码在数据框中创建新列,以便我可以进行一些计算,但是这确实很慢,我想尝试一种新方法。 / p>

我已经阅读了有关多处理的内容,但是我不确定如何以及在何处使用它,所以我寻求您的帮助。

def create_exposed_columns(df):
    df['MONTH_INITIAL_DATE'] = df['INITIAL_DATE'].dt.to_period(
        'M')
    df['MONTH_FINAL_DATE'] = df['FINAL_DATE'].dt.to_period(
        'M')
    df['Diff'] = df['MONTH_FINAL_DATE'] - df['MONTH_INITIAL_DATE']
    list_1 = []
    for index, row in df.iterrows():
        valor = 1
        initial_date = row['INITIAL_DATE']
        diff = row['Diff']
        temporal_list = {}
        list_1.append(temporal_list)
        for i in range(meses_iterables + 1):
            date = initial_date + relativedelta(months=+1 * i)
            if len(str(date.month)) == 1:
                value = {str(date.year) + '-0' + str(date.month): valor}
                temporal_list.update(value)
            else:
                value = {str(date.year) + '-' + str(date.month): valor}
                temporal_list.update(value)

    df_2 = pd.DataFrame(list_1)

    df = df.reset_index()
    df = pd.concat([df, df_2], axis=1)
    return df

我不知道从哪里开始,所以任何形式的帮助都是有用的。

谢谢

0 个答案:

没有答案