代码之家  ›  专栏  ›  技术社区  ›  Chopin

将数据框中的列附加到列表

  •  0
  • Chopin  · 技术社区  · 7 年前

    是否可以将数据帧中的列附加到空列表中?

    生成随机df的示例:

    df = pd.DataFrame(np.random.randint(0,100,size=(10, 4)), columns=list('ABCD'))
    

    输出为:

        A   B   C   D
    0  25  27  34  77
    1  85  62  39  49
    2  90  51   2  97
    3  39  19  86  59
    4  33  79  64  73
    5  36  66  29  78
    6  22  27  84  41
    7   0  26  22  22
    8  44  57  29  37
    9   0  31  96  90
    

    如果我有一个或多个空列表,您可以按每行追加列吗?所以 A,C 列表和 B,D 添加到列表。输出示例如下:

    empty_list = [[],[]]
    
    empty_list[0] = [[25,34],
                     [85,39]
                     [90,2]
                     [39,86] 
                     [33,64]
                     [36,29]
                     [22,84]
                     [0,22]
                     [44,29]
                     [0,96]]
    

    或者,您是否需要使用 df['A'].tolist() 然后按行进行追加?

    1 回复  |  直到 7 年前
        1
  •  2
  •   Sruthi    7 年前

    试试这个

        d=df[['A','C']]
        d.values.tolist()
    
        Output
        [[0, 93], [58, 14], [79, 18], [40, 26], [91, 14], [25, 18], [22, 25], [35, 99], [12, 82], [48, 72]]
    

    因此,解决方案是:

    empty_list = [[],[]]
    empty_list[0]=df[['A','C']].values.tolist()
    empty_list[1]=df[['B','D']].values.tolist()
    

    我的df是:

    df = pd.DataFrame(np.random.randint(0,100,size=(10, 4)), columns=list('ABCD'))
    df
        A   B   C   D
    0   0  60  93  94
    1  58  52  14  33
    2  79  84  18   1
    3  40  21  26  32
    4  91  19  14   8
    5  25  34  18  68
    6  22  37  25  10
    7  35  58  99  80
    8  12  38  82   8
    9  48  56  72  66