【问题标题】:How to create pandas datafram from a dictionary and keep list in one cell如何从字典创建熊猫数据框并将列表保存在一个单元格中
【发布时间】:2021-05-05 07:50:30
【问题描述】:

我有一本像这样的字典:

dic = {'c': [14, 41],
       'i': '52983542076720',
       'p': 31.7,
       's': 100,
       't': 1611945588012261376,
       'x': 11}

我试过了

pd.DataFrame(dic) 

pd.DataFrame.from_dict(dic,, orient='columns', dtype=int, columns=None)

但是,它们都返回 2 行数据框,例如:

c i p s t x
0 14 52983542076720 31 100 1611945588012261376 11
1 41 52983542076720 31 100 1611945588012261376 11

我实际上想得到一个像这样的数据框:

c i p s t x
0 [14,41] 52983542076720 31 100 1611945588012261376 11

知道我应该怎么做才能得到结果吗?

【问题讨论】:

  • 将 dic 更新为列表列表。然后尝试pd.DataFrame。即dic['c']=[dic['c']] 然后df=pd.DataFrame(dic)

标签: python pandas dataframe dictionary


【解决方案1】:

试试pd.DataFrame.from_dict

out = pd.DataFrame.from_dict({0:dic},'index')

Out[238]: 
          c               i     p    s                    t   x
0  [14, 41]  52983542076720  31.7  100  1611945588012261376  11

【讨论】:

    【解决方案2】:

    您可以改用pandas.Series

    pd.Series(dic).to_frame().T
    

    输出:

              c               i     p    s                    t   x
    0  [14, 41]  52983542076720  31.7  100  1611945588012261376  11
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-14
      • 2018-11-18
      • 2016-04-21
      • 2018-02-26
      • 2016-01-14
      • 1970-01-01
      • 2022-11-19
      相关资源
      最近更新 更多