我对数据类型转换的数量和看似非常不同的解决方案感到困惑,我无法开始工作。
将 Pandas 日期时间列(datetime64[ns] 例如 2017-01-01 03:15:00)转换为同一 Pandas 数据框中的另一列,转换为儒略日(例如 2458971.8234259)的最佳方法是什么?
非常感谢
最佳答案
创建 DatetimeIndex
并转换为儒略日期:
df = pd.DataFrame({'dates':['2017-01-01 03:15:00','2017-01-01 03:15:00']})
df['dates'] = pd.to_datetime(df['dates'])
df['jul1'] = pd.DatetimeIndex(df['dates']).to_julian_date()
#if need remove times
df['jul2'] = pd.DatetimeIndex(df['dates']).floor('d').to_julian_date()
print (df)
dates jul1 jul2
0 2017-01-01 03:15:00 2.457755e+06 2457754.5
1 2017-01-01 03:15:00 2.457755e+06 2457754.5
因为:
df['jul'] = df['dates'].dt.to_julian_date()
AttributeError: 'DatetimeProperties' object has no attribute 'to_julian_date'
关于pandas - 将 Pandas datetime64[ns] 转换为儒略日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61556397/