【问题标题】:Changing Values in multiindex pandas dataframe更改多索引熊猫数据框中的值
【发布时间】:2020-04-01 17:41:17
【问题描述】:

我已将多索引矩阵从 excel 加载到 panda 数据框。

    df=pd.read_excel("filename.xlsx",sheet_name=sheet,header=1,index_col=[0,1,2],usecols="B:AZ")

数据帧有 3 个索引列和 1 个标头,因此它有 4 个索引。部分数据框如下所示:

当我想显示一个特定的值时,它的工作方式如下:

df[index1][index2][index3][index4]

我现在想更改数据框中的某些值。在通过不同的论坛搜索了一段时间后,似乎 df.at 将是执行此操作的正确方法。所以我尝试了这个:

df.at[index1,index2,index3,index4]=10 (or any random value)

但我有一个ValueError: Not enough indexers for scalar access (setting)!。我还尝试了 df.at-Brackets 中索引的不同顺序。

对此的任何帮助将不胜感激!

【问题讨论】:

    标签: python pandas dataframe multi-index


    【解决方案1】:

    看来你需要这样的东西:

    df.loc[('Kosten','LKW','Sofia'),'Ruse']=10
    

    【讨论】:

    • 这正是我所需要的,非常感谢!
    • 总是乐于助人!
    猜你喜欢
    • 1970-01-01
    • 2019-05-21
    • 2020-06-24
    • 1970-01-01
    • 2017-03-18
    • 2017-09-17
    • 1970-01-01
    • 2017-07-23
    • 2018-08-21
    相关资源
    最近更新 更多