在Python中,我有一个pandas时间戳列表,例如。考虑以下输入提示input: list[list[pd.Timestamp]]
import pandas as pd
import numpy as np
# Example list of lists of Pandas Timestamps
input = [[pd.Timestamp('2023-09-01 10:00:00'), pd.Timestamp('2023-09-01 11:00:00')],
[pd.Timestamp('2023-09-02 12:00:00'), pd.Timestamp('2023-09-02 13:00:00')],
[pd.Timestamp('2023-09-03 14:00:00'), pd.Timestamp('2023-09-03 15:00:00')]]
此输入表示日期时间范围的列表。为了调试和简单起见,我更喜欢将此信息视为一个框架:
input_df = pd.DataFrame(input, columns=[['left', 'right']])
现在我需要:
1.展平输入
1.删除重复项
1.应用相同的字符串格式(以矢量化的方式,例如所有元素上的strftime("%Y/%m/%d/%H")
)
现在,我应该在pandas,numpy(因为所有元素都是相同类型的)还是Python中这样做?什么是最快、最优雅的方法?
3条答案
按热度按时间e7arh2l61#
如果需要在左列和右列之间获取所有小时数(如果差值为2小时或更多),则用途:
如果差异不重要,只需要flatten值,使用numpy:
stszievb2#
您可以使用pandas有效地实现所需的结果,如下所示:
rqmkfv5c3#