Python 将for循环的输出写入数据帧

Python 将for循环的输出写入数据帧,python,pandas,dataframe,Python,Pandas,Dataframe,如何将for循环的输出写入数据帧 输入数据是数据帧(df_元素)的列表 我正在尝试将下面for循环的输出写入数据帧。我尝试创建一个空列表(data)并使用data.append追加行输出。我收到一个错误,如无法连接类型为“”的对象 下面给出了在控制台中打印输出的代码: cut_off = [0,1,2] for co in cut_off: for df in df_elements: print co, "\t", str((df['score'] > co)

如何将for循环的输出写入数据帧

输入数据是数据帧(df_元素)的列表

我正在尝试将下面for循环的输出写入数据帧。我尝试创建一个空列表(data)并使用data.append追加行输出。我收到一个错误,如无法连接类型为“”的对象

下面给出了在控制台中打印输出的代码:


cut_off = [0,1,2]

for co in cut_off:
    for df in df_elements:
        print co, "\t", str((df['score'] > co).sum())

代码应将截止值与列分数进行比较,并打印每个数据框元素的总数,其中分数大于截止值

输出应如下所示:

cutoff number
0   5  #for first dataframe element
0   5  #for second dataframe element


这对我有用。列表中的元素是否为数据帧?你确定吗?另外,如果你使用的是python 3。不要忘记将代码插入到<代码>打印< /代码>。如果这个解决方案是需要的,请考虑接受它。在其他情况下,让我知道如何改进它,干杯。它工作得非常好!!你能给我解释一下这部分吗?数据帧(列表(zip(截止列表,数字列表)),列=['截止','number']。list和zip函数做什么?@ranusharma-zip是一个将项目绑定在一起的生成器。我相信要理解这一点,您可以运行这样一个玩具示例:
a=[1,2]b=[3,4]c=[5,6]对于zip中的项目(a,b,c):打印(项目)列表(zip(a,b,c))
cutoff number
0   5  #for first dataframe element
0   5  #for second dataframe element

# create empty lists for cutoff and number
cutoff_list = []
number_list = []

# loop through cutoff values and dataframes, to populate your lists
for co in cut_off:
    for df in df_elements:
        cutoff_list.append(co)
        number_list.append((df['score'] > co).sum())

# create dataframe from your lists
df = pd.DataFrame(list(zip(cutoff_list , number_list)), 
           columns =['cutoff', 'number']) 

# get your desired output
print(df)