我有熊猫数据透视表datafrme“ df_summary_table”。 print(df_summary_table)给出[16行x 21列]

    m1 = (df_summary_table.index == "test1")
    m2 = df_summary_table.columns.str.startswith('NA')
    df_summary_table.loc[m1 & m2] = 10


我试图执行以上操作得到奇怪的错误。
print(m1)给出:

[ True False False False False False False False False False False False
 False False False False]


m1的长度是16
print(m2)给出:

    [False False False False False False False False False False  True  True
  True  True  True  True  True  True  True  True False]


平方米的长度是21

m1和m2均为“”,有人可以帮助我解决此问题吗?

最佳答案

问题是没有Multiindex,因此对于过滤器行需要m1,对于过滤器列需要m2,必须删除"cost",并且&不能屏蔽掩码,因为长度和过滤方式不同(首先每行过滤,每列过滤):

df_summary_table.loc[m1, m2] = 10

关于python - 操作数不能与形状(16,)(21,)-pandas一起广播,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60097689/

10-12 17:56
查看更多