123456789101112131415161718192021222324252627282930313233343536373839 |
- # -*- coding: utf-8 -*-
- # @Time : 2024/6/21
- # @Author : 魏志亮
- import datetime
- import pandas as pd
- def get_time_space(df, time_str):
- """
- :return: 查询时间间隔
- """
- 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
- 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:\下载\#16.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)
|