pandas 数据帧from_dict - 为键设置列名,为键值设置列名



我有一本字典如下:

my_keys = {'a':10, 'b':3, 'c':23}

我把它变成一个数据帧:

df = pd.DataFrame.from_dict(my_keys)

它输出如下df

     a     b    c
0    10    3    23

我怎样才能让它看起来像下面:

Col1    Col2
a        10
b         3
c        23

我已经尝试了 orient=index,但仍然无法获得列名?

您可以创建元组列表并传递给构造函数DataFrame

df = pd.DataFrame(list(my_keys.items()), columns=['col1','col2'])

或者将键和值转换为单独的列表:

df = pd.DataFrame({'col1': list(my_keys.keys()),'col2':list(my_keys.values())})

print (df)
  col1  col2
0    a    10
1    b     3
2    c    23

您的解决方案应该通过 orient='index'columns 进行更改,但随后必须添加DataFrame.rename_axisDataFrame.reset_index 对于 index 中的列:

df = (pd.DataFrame.from_dict(my_keys, orient='index', columns=['col2'])
        .rename_axis('col1')
        .reset_index())

最新更新