# -*- coding: utf-8 -*- # @Time : 2024/6/21 # @Author : 魏志亮 import datetime import pandas as pd def get_time_space(df, time_str): """ :return: 查询时间间隔 """ begin = datetime.datetime.now() df1 = pd.DataFrame(df[time_str]) df1['chazhi'] = df1[time_str].shift(-1) - df1[time_str] result = df1.sample(int(df1.shape[0] / 100))['chazhi'].value_counts().idxmax().seconds del df1 print(datetime.datetime.now() - begin) return result def get_time_space_count(start_time: datetime.datetime, end_time: datetime.datetime, time_space=1): """ 获取俩个时间之间的个数 :return: 查询时间间隔 """ delta = end_time - start_time total_seconds = delta.days * 24 * 60 * 60 + delta.seconds return int(total_seconds / time_space) + 1 if __name__ == '__main__': df = pd.read_csv(r"D:\trans_data\01.csv") df['time_stamp'] = pd.to_datetime(df['time_stamp']) space = get_time_space(df, 'time_stamp') min = df['time_stamp'].min() max = df['time_stamp'].max() result = get_time_space_count(min, max, space) print(df.shape) print(space, min, max, result)