【问题标题】:Iterating through multiple pandas Dataframe object遍历多个 pandas Dataframe 对象
【发布时间】:2018-05-23 03:59:07
【问题描述】:

我有一个预测功能,我已将其应用于一个数据框,它工作正常。

output =forecast(rawdf)

问题是我可以提取多个数据帧,如果我想使用相同的函数来运行所有数据帧。因为 rawdf 有一个名为 DepotName 的列,它有多个唯一值。

我的目标是将 rawdf 分解为与 depot 对应的多个数据帧,并将预测功能分别应用于所有数据帧。

DepotList= ['A', 'B']

for Depot in DepotList:
    i=1
    rawdf=rawdf.loc[rawdf.DepotName.isin([DepotList])]
    output[i] =forecast(rawdf)
    i = i+1

我还没有尝试过,好像我是第一次这样做。感谢您为帮助我完成这项任务所付出的时间和精力。

【问题讨论】:

    标签: python pandas function for-loop


    【解决方案1】:

    尝试相同的逻辑,一一传递 DepotList 值。

    isin() 中不传递列表,而是通过迭代列表传递值

    DepotList= ['A', 'B']
    result = []
    for Depot in DepotList:
    
        resultByDepotName =rawdf.loc[rawdf.DepotName.isin(Depot)]
        list = forecast(resultByDepotName)
        result.append(list)
    

    结果将包含预测值

    不要重新分配结果的相同数据框变量rawdf.loc[rawdf.DepotName.isin(Depot)]

    【讨论】:

    • 预测函数返回一个列表,所以现在我必须将这些列表存储在每个单独的列表中。我如何存储这些列表
    • 您可以创建一个主空列表并每次在主列表中追加
    • 我修改了代码。核实。如果答案正确,请标记为正确答案
    猜你喜欢
    • 2018-12-28
    • 2023-03-24
    • 1970-01-01
    • 2014-10-17
    • 2019-09-12
    • 1970-01-01
    • 1970-01-01
    • 2022-10-25
    相关资源
    最近更新 更多