从数据框提取特征并将其转换为其他数据框?

时间:2019-05-06 11:29:31

标签: python arrays pandas dataframe

我有一个数据仓库(my_data :),如下所示:

   my_data:        
                    0            ...              16
      TB1     [1, 5, 24, 1]      ...        [0, 0, 0, 31]
      TB2     [7, 4, 13, 1]      ...        [0, 0, 0, 25]
      TB3     [7, 6, 20, 0]      ...        [7, 4, 2, 20]
      ...       .......          ...          ........

可以看出,每列中都有一个数字列表,总共my_data中有16列包含数字列表。现在,我要提取这些列表并将其用作常规列。所以我想要的my_data应该是这样的:

   my_data:
             0  1  2   3  ...  60  61 62
      TB1    1, 5, 24, 1  ...  0,  0, 31
      TB2    7, 4, 13, 1  ...  0,  0, 25
      TB3    7, 6, 20, 0  ...  4,  2, 20
      ...       .......   ...   ........

有什么主意吗?

2 个答案:

答案 0 :(得分:2)

使用malloc将DataFrame转换为2d数组,并通过构造函数创建新的reshape

DataFrame

答案 1 :(得分:2)

一种简单的方法是沿1sum并构造一个新的数据框:

pd.DataFrame(df.sum(1).values.tolist(), index=df.index)

     0  1   2  3  4  5  6   7
TB1  1  5  24  1  0  0  0  31
TB2  7  4  13  1  0  0  0  25
...