- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是我为这个问题创建的示例数据集:
data1 = pd.DataFrame([['1','303','3/7/2016'],
['4','404','6/23/2011'],
['7','101','3/7/2016'],
['1','303','5/6/2017']],
columns=["code", "ticket #", "CB date"])
data1['CB date'] = pd.to_datetime(data1['CB date'])
data2 = pd.DataFrame([['1','303','2/5/2016'],
['4','404','6/23/2011'],
['7','101','3/17/2016'],
['1','303','4/6/2017']],
columns=["code", "ticket #", "audit date"])
data2['audit date'] = pd.to_datetime(data2['audit date'])
print(data1)
print(data2)
code ticket # CB date
0 1 303 2016-03-07
1 4 404 2011-06-23
2 7 101 2016-03-07
3 1 303 2017-05-06
code ticket # audit date
0 1 303 2016-02-05
1 4 404 2011-06-23
2 7 101 2016-03-17
3 1 303 2017-04-06
我想合并两个 df,并确保 CB 日期始终在审核日期或之后:
data_all = data1.merge(data2, how='inner', on=['code', 'ticket #'])
data_all = data_all[data_all['audit date'] <= data_all['CB date']]
print(data_all)
code ticket # CB date audit date
0 1 303 2016-03-07 2016-02-05
2 1 303 2017-05-06 2016-02-05
3 1 303 2017-05-06 2017-04-06
4 4 404 2011-06-23 2011-06-23
但是,我只想在每个审计日期之后保留最早的 CB 日期行。所以在上面的输出中,第 2 行不应该存在,因为第 1 行和第 2 行都有相同的审计日期 2016/2/5,但我只想保留第 1 行,因为 CB 日期更接近 2016/2/5 比第 2 行 CB 日期。
期望的输出:
code ticket # CB date audit date
0 1 303 2016-03-07 2016-02-05
3 1 303 2017-05-06 2017-04-06
4 4 404 2011-06-23 2011-06-23
我知道在 SQL 中我必须首先 gorupby code & ticket # & Audit date,然后按升序排列 CB date,然后在每组中取项目 rank = 1;但是如何在 Python/Pandas 中执行此操作?
我在这里阅读了其他帖子,但我仍然不明白,所以非常感谢这里的一些建议。
我读过的几篇文章包括:
最佳答案
我会通过可选的 sort_values
调用和 drop_duplicates
调用来完成此操作。
data_all.sort_values(data_all.columns.tolist())\
.drop_duplicates(subset=['CB date'], keep='first')
code ticket # CB date audit date
0 1 303 2016-03-07 2016-02-05
2 1 303 2017-05-06 2016-02-05
4 4 404 2011-06-23 2011-06-23
我说 sort_values
调用在这里是可选的,因为您的数据似乎已经排序。如果不是,请确保这是您解决方案的一部分。
关于 python Pandas : how to take only the earliest date in each group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46961529/
我正在尝试模拟一个间隔调度算法,使用贪婪技术检测最早完成时间。我的问题是,如果它将在控制台应用程序中创建,输入是什么?有哪些方法?非常感谢。 最佳答案 每个任务的输入是开始时间和结束时间(例如 10:
我正在开发一个任务调度器,我想使用 EDF 调度。我需要安排的任务集仅包含截止日期等于其周期的任务,并且必须定期安排任务。我遇到的问题是任务一旦开始执行就不能中断。 我知道只有当任务被抢先安排在单个处
另一个简单的问题:有什么方法可以告诉 flex 优先选择匹配较短事物的规则而不是匹配较长事物的规则?我找不到关于此的任何好的文档。 这就是我需要它的原因:我为一种伪语言解析一个文件,其中包含一些与控制
我有一个 Splunk 搜索字符串。如果我添加 earliest=10/05/2020:23:59:58,搜索字符串仍然有效。但是,如果我将其更改为 earliest=10/05/2020:23:59
假设我正在尝试对银行和分行进行分类,其中一家银行通过 branches.bank_id 拥有多个分行。每个分支都有一个令人敬畏的因素 branches.awesomeness。 我将如何构造一个查询,
这是我为这个问题创建的示例数据集: data1 = pd.DataFrame([['1','303','3/7/2016'], ['4','404','6/2
好吧,我们有作业调度的贪心算法(调度最大数量的作业)。我们可以使用不同的技术 最短的工作优先 最早开始时间优先 首先是冲突最小的工作 最早结束时间优先 我有前三个策略的反例,但找不到第四个策略的反例。
题目地址:https://leetcode-cn.com/problems/the-earliest-moment-when-everyone-become-friends/ 题目描述 Ina s
我正在尝试查找集合中所有文档的最短日期。到目前为止,我已经通过排序函数解决了这个问题,并采用了我找到的第一个函数,请参见此处: earliestTime = function (kitUser) {
我已经设置了 Spark Structured Streaming (Spark 2.3.2) 来读取 Kafka (2.0.0)。如果消息在 Spark 流作业开始之前进入主题,我将无法从主题的开头
给定 N 个城市和 M 个计划中的基础设施项目,我需要找到一种方法来确定连接两个特定城市的最早日期。 一些城市位于同一个岛上,因此可以很容易地从彼此到达。这些城市形成了一个社区。有 C 个这样的社区。
假设您要访问一个缓存为空的网站。 在 Google Maps API v3 中,在初始加载时通知我 map 边界的最早事件是什么? 在 Google map v2 中,它是“已加载”事件;但是,此事件
我有 Kafka 服务器版本 2.4 并设置 log.retention.hours=168 (这样主题中的消息将在 7 天后被删除)和 auto.offset.reset=earliest (这样如
BigQuery 显示 GA360 每日导出 View 中有 600 多天,但下拉菜单中最早的日期表只有 500 天前。我每天实际有多少张 table ,如何才能看到最早的 table ? 最佳答案
我使用 Neptune 作为我的图形数据库。 我有带有 ID (UUID)、标签和日期的顶点。 我可以像这样提取多个顶点的所有属性: g.V('633378c3-b016-433a-a3ca-c166
我正在尝试按列分组,找到该组中的最小日期值并将其插入到该组中所有值的新列中。 以下内容: d = {'one' : pd.Series(np.random.randn(6), index=pd.dat
假设我们有一组 n要执行的作业,每个作业都需要单位时间。在任何时候,我们都只能提供一份工作。职位i , 1<=i<=n当且仅当它不迟于截止日期执行时,我们才能获利。 如果存在至少一个序列允许集合中的每
我有一个 Kafka 主题,我想从最早的事件开始阅读。 我想要做的是从一个主题(从时间上绝对最早的事件开始)获取所有数据,直到某个日期的事件。 每个事件的结构都有一个名为 dateCliente 的字
我在尝试使用 Spark 结构化流从 Kafka 读取数据时遇到了一个奇怪的问题。 我的用例是能够从可用的最大/最新偏移量中读取主题。 我的读取配置: val data = spark .r
上下文 我一直在阅读有关如何将 TUMBLINGWINDOW 函数与 TIMSTAMP BY 子句一起使用的文档,但似乎找不到有关如何计算包含 TUMBLING WINDOW 和 TIMESTAMP
我是一名优秀的程序员,十分优秀!