微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – AttributeError:’function’对象没有属性’sum’pandas

我在Pandas中有以下数据框…

+-----------------------+
|              | count  |
+-----------------------+
| group        |        |
+-----------------------+
| 11-          | 99435  |
+-----------------------+
| Bachelor+    | 64900  |
+-----------------------+
| Just 12      | 162483 |
+-----------------------+
| Some College | 61782  |
+-----------------------+

我想执行以下代码但是我收到错误

death_2013['percent_of_total'] = death_2013.count.apply(
     lambda x: (x / death_2013.count.sum()))

我收到以下错误

AttributeError: 'function' object has no attribute 'apply'

我检查了death_2013.dtypes并且count是一个int64.我无法弄清楚代码有什么问题.

解决方法:

一个pandas.DataFrame.count方法,它隐藏了列的名称.这就是您收到此错误消息的原因 – 正在访问绑定的方法计数,这显然不起作用.

在这种情况下,您只需使用[‘name_of_column’]语法访问两个位置的count列,并在将来命名列时注意DataFrame方法名称.

death_2013['percent_of_total'] = death_2013['count'].apply(
    lambda x: (x / death_2013['count'].sum()))

但请注意,在这种特殊情况下,不需要使用应用 – 您可以简单地将整个系列除以平均值.

death_2013['count'] / death_2013['count'].sum()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐