python - Python数据框为另一列中的每个值添加日期
问题描述
我在 Python 中有以下数据框:
Date Key
0 2020-01-01 AB
1 2020-01-05 AC
2 2020-01-09 AB
3 2020-01-10 AD
每个日期键组合都是唯一的。这意味着,例如,Dataframe 中没有其他 (2020-01-01, AB) 对。此外,数据框按日期排序。
我想要的是填写每个键的其余日期,以便想要的结果应该是:
Date Key
0 2020-01-01 AB
1 2020-01-02 AB
...
30 2020-01-31 AB
31 2020-01-01 AC
...
61 2020-01-31 AC
62 2020-01-01 AD
...
92 2020-01-31 AD
或像这样:
Date Key
0 2020-01-01 AB
1 2020-01-01 AC
2 2020-01-01 AD
3 2020-01-02 AB
4 2020-01-02 AC
5 2020-01-02 AD
...
90 2020-01-31 AB
91 2020-01-31 AC
92 2020-01-31 AD
请注意,我还有其他月份和年份,以及更多钥匙。
解决方案
尝试这个
N = df['key'].eq('AB').sum()
df = df.sort_values('key').groupby('key').head(N)
如果您可以像这样提供您的数据框,它将很容易理解和处理
df = pd.DataFrame({"X1": ["A", "B", "A", "B", "B","C","C","C"],"X2": ['FOO','BAR' ,'FOO1', 'BAR1', 'FOO2','BAR2','FOO3','BAR3']})
推荐阅读
- python - 豪猪中的唤醒词检测
- c# - 如果 C# ASP.NET 中的条件在 gridview 中设置文本框控件
- laravel-8 - 在 Laravel 8 上更新帖子的问题
- stata - 如何在Stata中使用*?
- reactjs - 我学错了 ReactJs 吗?
- c# - Chrome 无法从 AWS S3 上的文件下载链接
- firebase - TypeError:无法读取未定义的属性“_fieldsProto”
- mongodb - Mongodb - 查询多个小于条件,其中一个查看嵌套列表
- travis-ci - 如何在 GitHub 上为草稿或 WIP 拉取请求禁用 Travis CI 管道?
- typescript - babel-plugin-rewire 在 Typescript 项目中不起作用