繁体   English   中英

通过在 for 循环熊猫中将列表值添加到 df 将列表转换为数据框

[英]Convert list to dataframe by adding list values to df within for loop pandas

我有一个简单的清单

检索 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

一个想法是创建两个列表,一个存储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})

我认为你可以这样做:

for i, v in enumerate(list_name_1):
    diction = {'i': i, 'v': v}
    df = df.append(diction, ignore_index=True)
    

我不知道您是如何进行计算的,但我认为这是捕获所有值的好方法。

我认为你应该为此使用预定义的语法。使用 for 循环真的很长。

import pandas as pd

L = ["This","Is","A","List"]
M = ["This","Is","Also","List"]
#create new dataframe
df = pd.DataFrame({'col':L,'col2':M})
print (df)


           col  col2
       0  This  This
       1    Is    Is
       2     A  Also
       3  List  List

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM