【问题标题】:list in a 2D list a column python在二维列表中列出一列python
【发布时间】:2023-08-26 16:28:02
【问题描述】:
main_list=[
    ['1', '2', '3'],
    ['800800', '802100', '800905'],
    ['Kartoffel  -FESTKOCHEND-', 'Princes/Belana', '(1  x  25  kg./Sack)', 'Orangen,  Press-/Saftorangen', '(1  x  90er-St./Ktn.)', 'Möhren,  lose  (gross', '(1  x  10  Kg/Sack)'],
    ['30', '56', '35'],
    ['1', '1', '1'],
    ['30,00  KG', '56,00  Kin.', '35,00  KG'],
    ['10,00', '10,00', '6,80'],
    ['300,00”  1', '/', '560,00  1', '238.00‘  4']
]

我想将二维列表中的每个列表都设为一列,并添加与列一样多的标题。但在我的代码中,每个元素都是一行。

dataFrame = pd.DataFrame(data=main_list)
cols = list(dataFrame.columns.values)
index = 1   
for column in cols:
    cols[index-1] = "unnamed"+str(index)                    
    index += 1 
newDataFrame = pd.DataFrame(main_list,columns=cols) 

【问题讨论】:

    标签: python pandas list


    【解决方案1】:

    您可以对正在创建的第一个数据框进行转置,以将每个列表作为一列而不是一行。

    dataFrame.transpose()
    

    【讨论】:

    • 使用转置,索引下降到7(因为它取了元素最高的列表)
    • 是的,除非您正确编辑第三个列表,否则所有列表将只有 3 个项目。然后你会得到 3 行。