首页 > 解决方案 > 在 for 循环中创建数据框的列

问题描述

我在熊猫问题上需要帮助:

我有一个返回熊猫系列的函数,如下所示:

 date       number
2018-01-01     1
2018-02-01     2
2018-03-01     3
2018-04-01     3

我在 for 循环中调用这个函数。for 循环执行以下操作:

for i in range(len(category_list)):
    print(category_list[i])
    serie = filter_users_pageNS(data, new_index, category_list[i])
    serie = pd.DataFrame(serie).reset_index()

wherecategory_list只是要完成的迭代次数,其中包含要传递给filter_users_pageNS函数的参数。

我的目的是将number每次迭代获得的列附加到数据框中,以便在 for 循环结束时,我得到以下数据框:

date      number_iteration_1      number_iteration_2
2018-01-01       1                       4
2018-02-01       2                       1
2018-03-01       3                       5
2018-04-01       3                       2

如您所见,最终的数据框将number列添加到数据框中,名称为number_iteration_x

关于如何获得这个最终数据框的任何想法?

非常感谢您提前。

标签: pythonpandasdataframeseries

解决方案


IIUC,这些方面的东西应该起作用:

df=df.reset_index()
for i in range(len(category_list)):
    print(category_list[i])
    serie = filter_users_pageNS(data, new_index, category_list[i])
    serie = pd.DataFrame(serie).reset_index()
    df['number_iteration_'+str(i)]=serie 

编辑:根据您的新数据调整答案


推荐阅读