如何使用 pandas 加入 datetimeindex?
How can i make a join on datetimeindex using pandas?
为什么 pandas 不让我加入 datetimeindex?
这是一个小代码块来产生我遇到的问题。
dti = pd.date_range('2019-01-01','2020-01-01')
df1 = pd.DataFrame({'date':dti})
df2 = pd.DataFrame({'date':dti})
df1.join(df2,on="date")
我尝试先将列转换为日期时间对象,但仍然没有成功。
dti = pd.date_range('2019-01-01','2020-01-01')
dto = pd.to_datetime(dti)
df1 = pd.DataFrame({'date':dto})
df2 = pd.DataFrame({'date':dto})
df1.join(df2,on="date")
它们都失败了,但有以下异常。
ValueError: You are trying to merge on datetime64[ns] and int64 columns. If you wish to proceed you should use pd.concat
这是一个已知 Pandas 问题:Bug 。在修复之前,不会 merge
完成工作:
import pandas as pd
dti = pd.date_range('2019-01-01','2020-01-01')
dto = pd.to_datetime(dti)
df1 = pd.DataFrame({'date':dto})
df2 = pd.DataFrame({'date':dto})
df1.merge(df2,on="date", how='inner')
我认为这是 Pandas 中的错误。 join
以某种方式表现得好像您的日期之一不是日期数据类型。
为什么 pandas 不让我加入 datetimeindex? 这是一个小代码块来产生我遇到的问题。
dti = pd.date_range('2019-01-01','2020-01-01')
df1 = pd.DataFrame({'date':dti})
df2 = pd.DataFrame({'date':dti})
df1.join(df2,on="date")
我尝试先将列转换为日期时间对象,但仍然没有成功。
dti = pd.date_range('2019-01-01','2020-01-01')
dto = pd.to_datetime(dti)
df1 = pd.DataFrame({'date':dto})
df2 = pd.DataFrame({'date':dto})
df1.join(df2,on="date")
它们都失败了,但有以下异常。
ValueError: You are trying to merge on datetime64[ns] and int64 columns. If you wish to proceed you should use pd.concat
这是一个已知 Pandas 问题:Bug 。在修复之前,不会 merge
完成工作:
import pandas as pd
dti = pd.date_range('2019-01-01','2020-01-01')
dto = pd.to_datetime(dti)
df1 = pd.DataFrame({'date':dto})
df2 = pd.DataFrame({'date':dto})
df1.merge(df2,on="date", how='inner')
我认为这是 Pandas 中的错误。 join
以某种方式表现得好像您的日期之一不是日期数据类型。