【问题标题】:Panda Dataframe: Iterate over column header and corresponding valuesPanda Dataframe:迭代列标题和相应的值
【发布时间】:2021-09-14 12:46:34
【问题描述】:

我想为 df 列标题和第 0 行值创建一个键值对。

但是我得到了下面的代码

ValueError:索引的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。

Firm |Price |Revenue | Cost|
A    | 3    |4       |  5  |

 pt=[]
 pt=[(k, l) for k in df.columns[2:4] and l in df.iloc[0,2:4]]
 pt_dict=dict(pt)

所需输出

{Revenue: 4, Cost: 5}

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    试试这个:

    pt_dict = dict(zip(df.columns[2:4], df.iloc[0, 2:4]))
    

    输出:

    {Revenue: 4, Cost: 5}
    

    【讨论】:

      【解决方案2】:

      如果您只想要一行,这里有一个示例。

      data = {'Firm': ["A"], 'price': [3], "Revenue":[4], "Cost":[5]}
      t = pd.DataFrame.from_dict(data)
      cols = ["Revenue", "Cost"]
      t.loc[0,cols].to_dict()
      

      如果你多于一行,则字典将 [row:value] 放入字典的值中

      【讨论】:

        猜你喜欢
        • 2019-04-11
        • 2021-10-28
        • 2018-08-03
        • 2020-05-10
        • 1970-01-01
        • 2021-01-14
        • 2020-08-30
        • 2021-08-11
        • 1970-01-01
        相关资源
        最近更新 更多