为了账号安全,请及时绑定邮箱和手机立即绑定

将字典不等项转换为数据框

将字典不等项转换为数据框

撒科打诨 2021-06-11 12:23:17
我有一个有 3000 个键的字典,每个键都有一个列表作为它的值,例子:dictionary = {'yup': ['chocolate', 'pizza', 'rainbows'], 'tape': ['what', 'milk'], ....}我想将此字典转换为数据库,但由于我的值不相等,因此无法使用 pandas 命令“ pd.DataFrame(dictionary)”。我收到错误消息“数组的长度必须相同”。我的问题是,我如何仍然创建一个数据框(转置它)并在没有数据的地方使用空单元格。例子:index   column1      column2   column3 `'yup'  'chocolate'  'pizza'    'rainbows`''tape'  'what'       'milk'     blank
查看完整描述

2 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

使用values的价值和keys索引


df = pd.DataFrame(list(dictionary.values()), index=dictionary.keys())


        0           1       2

yup     chocolate   pizza   rainbows

tape    what        milk    None

如果需要命名的列 index


df.reset_index()


    index   0           1       2

0   yup     chocolate   pizza   rainbows

1   tape    what        milk    None


查看完整回答
反对 回复 2021-06-16
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

将您的价值观转换为pd.Series:


df = pd.DataFrame({k:pd.Series(v) for k,v in dictionary.items()}).T


              0      1         2

tape       what   milk       NaN

yup   chocolate  pizza  rainbows

或者:


df = pd.DataFrame.from_dict({k:pd.Series(v) for k,v in dictionary.items()},orient='index')


              0      1         2

tape       what   milk       NaN

yup   chocolate  pizza  rainbows


查看完整回答
反对 回复 2021-06-16
  • 2 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信