熊猫-将绝对值应用于列

时间:2020-07-29 17:00:23

标签: python pandas

以下内容:

record = record.loc[(record['Media_Casa'].abs() > 0.5)
                   &(record['Media_Fora'].abs() > 0.5)]

引发以下错误:

    record = record.loc[(record['Media_Casa'].abs() > 0.5)
AttributeError: ("'float' object has no attribute 'abs'", 'occurred at index 2')

如何获取其中所有值的绝对值?

1 个答案:

答案 0 :(得分:0)

这是一个多索引系列,一个索引为Media_Casa,另一个索引为Media_Fora。做您想要的事的一种更清洁的方法是将其转换为数据框。

record = pd.Series({
    'Media_Casa': [1,0.5,1,0.4],
    'Media_Fora': [1,0.4,0.5,.4],
})

print (record.index)
df = pd.DataFrame({'Media_Casa' : record['Media_Casa'], 'Media_Fora' :record['Media_Fora']})
df.loc[(df['Media_Casa'].abs() > 0.5)
                   &(df['Media_Fora'].abs() > 0.5)]

输出:

Index(['Media_Casa', 'Media_Fora'], dtype='object')
   Media_Casa   Media_Fora
0   1.0         1.0
相关问题