【问题标题】:creating a dataframe using a dictionary with new columns in pandas in python使用字典创建数据框,其中包含 python 中的 pandas 中的新列
【发布时间】:2017-11-01 12:24:38
【问题描述】:

你好,我有一本字典,

 d={'Pricing': 1, 'Product': 1, 'Rates': 2, 'one': 1}
 columnsd=["one","two"]

我试过了,

  df=pd.DataFrame(d,columns=columnsd)

我明白了,

 ValueError: If using all scalar values, you must pass an index

我想要的 df 应该是,

   one          two    
   Pricing       1
   Product       1
   Rates         2
   one           1

【问题讨论】:

    标签: python pandas dictionary dataframe data-analysis


    【解决方案1】:

    转换为元组并使用pd.DataFrame/pd.DataFrame.from_records:

    pd.DataFrame.from_records(list(d.items()), columns=columnsd)
    
           one  two
    0  Product    1
    1      one    1
    2  Pricing    1
    3    Rates    2
    

    【讨论】:

    • @Bharath 我没有意识到你可以直接调用构造函数,哈哈
    • 发帖速度的微小差异将夺走选票。
    • @Bharath 我记得它曾经发生在你身上:p
    【解决方案2】:

    字典键将被视为索引,因此请使用 .items() 创建数据框,即

    d={'Pricing': 1, 'Product': 1, 'Rates': 2, 'one': 1}
    columnsd=["one","two"]
    
    df=pd.DataFrame(list(d.items()),columns=columnsd)
    
    一二 0 产品 1 1 一 1 2 定价 1 3 费率 2

    【讨论】:

      猜你喜欢
      • 2018-10-16
      • 1970-01-01
      • 2015-12-11
      • 2017-03-16
      • 2022-11-11
      • 2021-12-08
      • 2020-07-28
      • 2021-07-10
      • 2020-12-05
      相关资源
      最近更新 更多