首页 > 解决方案 > 通过将列表值添加到 for 循环 pandas 中的 df 将列表转换为数据框

问题描述

我有一个简单的清单

检索 i、v 列表的代码:

 for i, v in enumerate(list_name_1):
    print(i, v)

输出

    5 -100
    4 30
    0 -90
    1 -80
    3 100
    2 1000
    and so on

我希望将所有这些存储在数据框中。

问题是我在 for 循环中对 list_name_1 进行了大量计算,因此我只需要在 for 循环中捕获 i 和 v 值。所以我不能做一个简单df=pd.DataFrame(list_name_1)的例如

我将需要执行以下操作:

df = []
 for i, v in enumerate(list_name_1):
        print(i, v)
        some code to add i,v iteratively in columns i and v of df

标签: pythonpandasdataframe

解决方案


一个想法是创建两个列表,一个存储 的计算值,一个i存储v。所以:

i_values = []
v_values = []
for i, v in enumerate(list_name_1):
    print(i, v)
    # Make calculations for i and v
    i_values.extend([calculated_i])
    v_values.extend([calculated_v])

df = pd.DataFrame(data={"i": i_values, "v": v_values})

推荐阅读