You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历DataFrame日期提取每日12:00对应的High值?

提取每日12:00对应的High值

需求

从目标DataFrame中筛选出每日12:00:00.0时间点的记录,保留Date、Time和High列,生成新的DataFrame。

原DataFrame数据

Date         Time     Open     High      Low     Last
0      5/6/2019   09:30:00.0     2872   2888.5     2868  2888.25
1      5/6/2019   10:00:00.0  2888.25     2893   2883.5   2889.5
2      5/6/2019   10:30:00.0   2889.5  2895.25  2887.75  2894.25
3      5/6/2019   11:00:00.0     2894  2898.25  2891.25     2898
4      5/6/2019   11:30:00.0     2898   2898.5   2891.5  2892.25
5      5/6/2019   12:00:00.0  2892.75   2893.5  2890.25     2891
6      5/6/2019   12:30:00.0     2891   2894.5   2890.5   2890.5
7      5/6/2019   13:00:00.0  2890.25  2895.75  2888.75  2895.25
8      5/6/2019   13:30:00.0   2895.5   2896.5  2894.25  2896.25
9      5/6/2019   14:00:00.0  2896.25  2899.75  2894.75     2899
10     5/6/2019   14:30:00.0     2899  2909.75     2899   2909.5
11     5/6/2019   15:00:00.0  2909.25   2911.5  2906.75  2909.25
12     5/6/2019   15:30:00.0  2909.75     2912     2906  2907.75
13     5/7/2019   09:30:00.0  2879.75  2886.75   2869.5   2876.5
14     5/7/2019   10:00:00.0   2876.5   2876.5  2864.25  2874.75
15     5/7/2019   10:30:00.0   2874.5   2875.5  2861.25  2863.25
16     5/7/2019   11:00:00.0  2863.25  2868.25     2858     2865
17     5/7/2019   11:30:00.0  2865.25     2869   2856.5     2860
18     5/7/2019   12:00:00.0  2859.75  2868.75   2855.5     2868
19     5/7/2019   12:30:00.0     2868   2869.5   2862.5   2862.5
20     5/7/2019   13:00:00.0   2862.5   2863.5  2847.75  2849.75
21     5/7/2019   13:30:00.0  2849.75     2855  2845.25  2850.75
22     5/7/2019   14:00:00.0  2850.75     2855  2845.25     2846
23     5/7/2019   14:30:00.0     2846     2851     2841  2848.75
24     5/7/2019   15:00:00.0   2848.5  2852.25     2843     2845
25     5/7/2019   15:30:00.0  2844.75  2860.75   2836.5  2859.25

解决方案

直接利用Pandas的布尔索引筛选符合条件的行,无需遍历,效率更高:

import pandas as pd

# 假设原数据已加载到df变量中
# 筛选Time为12:00:00.0的行,保留指定列并重置索引
result_df = df[df['Time'] == '12:00:00.0'][['Date', 'Time', 'High']].reset_index(drop=True)

输出结果

Date         Time     High      
0      5/6/2019   12:00:00.0  2893.5  
1      5/7/2019   12:00:00.0  2868.75

内容的提问来源于stack exchange,提问作者NoLimitLondon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 07:45:29