python - 在数据框列中标记相同的日期?
问题描述
我有一个带日期的数据框:
东风:
date value
20210403 1
20210403 33
20210401 33
20210408 44
20210401 -11
20210402 333
我想标记相同的日期并获得输出:
date value date_label
20210403 1 1
20210403 33 1
20210401 33 2
20210408 44 3
20210401 -11 2
20210402 333 4
我考虑过获取df.date.unique()
并添加一列标签,然后rejoin
将其添加到我的 df 中。是否有任何内置功能可以做到这一点?
解决方案
enumerate
这是您可以在唯一日期值上尝试的解决方案,并将map
其恢复为原始 df。
map_ = {j: i for i, j in enumerate(df['date'].unique(), 1)}
df['date_label'] = df['date'].map(map_)
date value date_label
0 20210403 1 1
1 20210403 33 1
2 20210401 33 2
3 20210408 44 3
4 20210401 -11 2
5 20210402 333 4
推荐阅读
- javascript - 同步加载外部 JavaScript
- r - 强制引入的 NA(无缺失值)
- android - 从缓存的视频 ExoPlayer 中获取 uri
- django - 如何让 TextField 在 DRF 的 API 浏览器中呈现?
- html - 内部 div 的高度大于容器
- javascript - 单击同一级别的元素(兄弟?)切换一个类,但不要切换具有相同类的其他元素
- python - 如何从作为字典列表中特定键值的列表中删除空字符串?
- jakarta-ee - Wildfly 10.1.0.Final ManagedExecutorService 导致活动线程数增加
- jenkins - 如何修复——Jenkins Post-build Action Groovy 脚本无法评估
- c++ - 为什么 gRPC C++ 客户端在没有明确的服务器 SSL 证书的情况下无法工作,就像在示例中一样?