[英]Sorting and Combining datetime data frames Pandas Python
我正在尝试将结合数据框的dates1
和dates2
结合起来,以同步顺序对它们进行排序。 两组都有相似的日期值,代码应该只能在输出中具有一个唯一值。 我需要什么代码才能获得下面的Expected Output
?
import pandas as pd
import numpy as np
dates1 = pd.to_datetime(['2015-10-08 13:41:00',
'2015-10-08 13:44:00', '2015-10-08 13:48:00',
'2015-10-08 13:49:00'])
dates2 = pd.to_datetime(['2015-10-08 13:42:00','2015-10-08 13:44:00', '2015-10-08 13:45:00', '2015-10-08 13:50:00'])
预期输出:
['2015-10-08 13:41:00',
'2015-10-08 13:42:00', '2015-10-08 13:43:00',
'2015-10-08 13:44:00', '2015-10-08 13:45:00',
'2015-10-08 13:46:00', '2015-10-08 13:47:00',
'2015-10-08 13:48:00', '2015-10-08 13:49:00',
'2015-10-08 13:50:00', '2015-10-08 13:51:00']
由于它们都是pandas.DatetimeIndex
,您可以使用pandas.Index
设置操作
dates1.union(dates2)
对于多个 DatetimeIndex 有几个选项
dates1.union(dates2).union(dates3).union(dates4)
或者更好的方法
import functools
functools.reduce(pd.Index.union, [dates1, dates2, dates3, dates4])
或使用此问题的其他答案建议的 concat 方法
pd.concat([date1,date2]).drop_duplicates().sort_values()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.