用列表字典制作熊猫数据框

时间:2020-03-26 20:41:39

标签: python pandas dataframe

我的问题与this one有点联系,除了我想将列表变成行而不是列,并指定列名。

例如,我从字典开始:

my_dict = {'label1' : [0.1, 1.1, 32.1] , 'label2' : [12.3, 5.3, 2.4], 'label3' : [1.5, 7.5, 7.4]}

我希望能够指定列名称,例如:

cols = ['labels','val1' ,'val2, 'val3']

并创建数据框

labels  | val1  | val2  | val3
label1    0.1     1.1     32.1
label2    12.3    5.3     2.4
label3    1.5     7.5     7.4

2 个答案:

答案 0 :(得分:1)

您想要转置的数据框,然后分配列名,

df = pd.DataFrame(my_dict)
df = df.T.reset_index()
df.columns = cols

    labels  val1    val2    val3
0   label1  0.1     1.1     32.1
1   label2  12.3    5.3     2.4
2   label3  1.5     7.5     7.4

答案 1 :(得分:0)

您可以使用pandas.DataFrame.from_dict,但可以使用索引的“方向”而不是列。

这允许将标签用作索引。

df = pd.DataFrame.from_dict(my_dict, orient='index', columns =  ['val1' ,'val2', 'val3'])
df.index.name = 'labels'  # rename index column

print(df)

输出

      val1  val2  val3
labels                  
label1   0.1   1.1  32.1
label2  12.3   5.3   2.4
label3   1.5   7.5   7.4