python - 计算每个日期和每个日期和类别的观察结果
问题描述
我需要解释熊猫的一种行为。假设这个数据框:
index;day;id;value
0;2020-01-03;1;14
1;2020-01-03;1;2
2;2020-01-03;2;5
3;2020-01-05;1;7
4;2020-01-05;1;9
当我想计算每天的观察次数和 id 时,我可以简单地做:
df["frequency_per_id"] = df(["id", "day"])["id"].transform("count")
但是当我想使用相同的公式计算每天的观察次数时:
df["frequency"] = df(["day"])["day"].transform("count")
我有一个错误<ipython-input-16-3a624d98b3b5>:1: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead
你能解释一下为什么吗?我做同样的过程?非常感谢
解决方案
这是一个警告,而不是错误。我认为代码会完成你想要它做的事情。
这是一个非常常见的错误,谷歌搜索“SettingWithCopyWarning”返回数百篇文章和 StackOverflow 帖子
推荐阅读
- c - 如果指针作为大小传入,为什么 malloc 会覆盖先前的分配?
- python - 有 Python GDTF 模块吗?
- eclipse - 用于一般文档生成的 m2doc
- firebase - Google Firebase 身份验证多次
- gitlab - Gitlab CI:仅替换:*allowed_branches 规则:
- amazon-web-services - 如何使用标签从 Glacier 恢复 S3 对象
- python - 如何为我的员工组织健康检查(使用 python 代码的 Docker)?
- javascript - 如何在nodejs中构建新类
- python - repl.it 中未显示条形图
- flexbox - 如何计算弹性项目的宽度?以及它如何受其子项宽度的影响?