你有一个想法,我怎么能从一个numpy日期时间数组中获得元年的一天? 使用我的代码,我只能接收阵列中一个元素的一年中的哪一天。如何获取数组中每个元素的一年中的哪一天? 这里是我的代码(包括你的代码):如何从一个numpy日期时间数组中获取元年的元日?
#import modules
import numpy as np
import pandas as pd
import datetime
from datetime import datetime
#date values in an numpy array as int
data_int = np.array([[20131001, 20131001, 20131001],
[20131002, 20131002, 20131002],
[20131002, 20131002, 20131002]])
#transform the data_int array in a datetime list
data_list = [pd.to_datetime(pd.Series(x), format="%Y%m%d") for x in data_int]
#transform the datetime list back to an datetime array with dtype='datetime64[ns]')
data = np.asarray(data_list, dtype='datetime64', order=None)
#convert dtype='datetime64[ns]' into a datetime.date object
data_date = data.astype('M8[D]').astype('O')
#get the day of the year from the the data_date array.
day_of_year = data_date[0,1].timetuple().tm_yday
#274
这将是巨大的,如果你或其他人有对我来说是个好主意! 谢谢!
嗨,Ophir Carmi,thx非常感谢您的帮助。现在计算一年中的一天真的很容易!但我还有一个问题。我需要在10月1日开始计算。因此我修改了一下你的代码,它可以工作。但是有一个缺陷 - 输出数组有不同的形状(取而代之(3,3)形状我得到了(3,1)形状。什么是错误的?它必须与迭代有关...如果你有一个想法来解决这个问题。Greetings, – angi
你可以在Awnser2中找到修改的代码。问候, – angi