我如何采取多个列表,并把它们作为不同的列在一个python数据框架?我试过这个办法,但遇到了一些麻烦。

尝试1:

有三个列表,将它们压缩在一起,并使用res = zip(lst1,lst2,lst3) 只产生一列

尝试2:

percentile_list = pd.DataFrame({'lst1Tite' : [lst1],
                                'lst2Tite' : [lst2],
                                'lst3Tite' : [lst3] }, 
                                columns=['lst1Tite','lst1Tite', 'lst1Tite'])

产生一行3列(上面的方式),或者如果我转置它是3行1列

我如何得到一个100行(每个独立列表的长度)由3列(三个列表)熊猫数据框架?


当前回答

有几种方法可以从多个列表中创建数据帧。

list1=[1,2,3,4]
list2=[5,6,7,8]
list3=[9,10,11,12]

pd。DataFrame({'list1':list1, 'list2':list2, 'list3'=list3}) pd.DataFrame (data = zip (list1、用于list3),列=[“list1”、“用于”,' list3 '])

其他回答

加上上面的答案,我们可以在飞行中创造

df= pd.DataFrame()
list1 = list(range(10))
list2 = list(range(10,20))
df['list1'] = list1
df['list2'] = list2
print(df)

希望能有所帮助!

添加一个可伸缩的解决方案。

lists = [lst1, lst2, lst3, lst4]
df = pd.concat([pd.Series(x) for x in lists], axis=1)

您可以简单地使用下面的代码

train_data['labels']= train_data[["LABEL1","LABEL1","LABEL2","LABEL3","LABEL4","LABEL5","LABEL6","LABEL7"]].values.tolist()
train_df = pd.DataFrame(train_data, columns=['text','labels'])

只是补充一下,使用第一种方法,它可以这样做

pd.DataFrame(list(map(list, zip(lst1,lst2,lst3))))

有几种方法可以从多个列表中创建数据帧。

list1=[1,2,3,4]
list2=[5,6,7,8]
list3=[9,10,11,12]

pd。DataFrame({'list1':list1, 'list2':list2, 'list3'=list3}) pd.DataFrame (data = zip (list1、用于list3),列=[“list1”、“用于”,' list3 '])