Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将列从pandate对象更改为python datetime_Python_Pandas_Datetime - Fatal编程技术网

将列从pandate对象更改为python datetime

将列从pandate对象更改为python datetime,python,pandas,datetime,Python,Pandas,Datetime,我有一个数据集,第一列为日期,格式为:2011-01-01和type(data\u raw['pandas\u date'])为我提供pandas.core.series.series 我想将整个列转换为date-time对象,以便根据需要从每一行提取和处理年/月/日 我使用了pd.to\u datetime(data\u raw['pandas\u date'])并在输出的最后一行打印了输出。我假设值已转换为datetime 但是当我再次运行type(data\u raw['pandas\u

我有一个数据集,第一列为日期,格式为:2011-01-01和
type(data\u raw['pandas\u date'])
为我提供
pandas.core.series.series

我想将整个列转换为date-time对象,以便根据需要从每一行提取和处理年/月/日

我使用了
pd.to\u datetime(data\u raw['pandas\u date'])
并在输出的最后一行打印了输出。我假设值已转换为datetime

但是当我再次运行
type(data\u raw['pandas\u date'])
时,它仍然显示
pandas.core.series.series
并且每当我尝试在其上运行
.dt
函数时,它都会给我一个错误,告诉我这不是datetime对象

所以,我的问题是-看起来好像是_datetime函数将我的数据更改为datetime对象,但如何将其应用/保存到pandas_date列?我试过了

data\u raw['pandas\u date']=pd.to\u datetime(data\u raw['pandas\u date'])


但这也不起作用,我在检查类型时得到了相同的结果。很抱歉,这太基本了。

我认为答案很简单,就是您检查数据帧类型的方式。如果我这样做:

df = pd.DataFrame({'date': ['2011-01-01','2011-01-02','2011-01-13']})
new = pd.to_datetime(df['date'])
type(new)
您将获得对象的“总体”类型,这是一个系列。但如果你这样做了:

new.dtypes

您得到的是
dtype('我认为答案很简单,就是您检查数据帧类型的方式。如果我这样做:

df = pd.DataFrame({'date': ['2011-01-01','2011-01-02','2011-01-13']})
new = pd.to_datetime(df['date'])
type(new)
您将获得对象的“总体”类型,这是一个熊猫系列。但如果您这样做:

new.dtypes
您获得
dtype('
type(data\u raw['pandas\u date'])
将始终返回
pandas.core.series.series
,因为对象
data\u raw['pandas\u date']
的类型是
pandas.core.series
。您想要的是获得
dtype
,所以您可以只做
data\u raw['pandate'].dtype

data\u raw['pandas\u date']=pd.to\u datetime(data\u raw['pandas\u date'])

这是正确的,如果您在之后再次执行
data\u raw['pandas\u date'].dtype
,您将看到它是
datetime[64]
类型(data\u raw['pandas\u date'])
将始终返回
pandas.core.series
,因为对象
data\u raw['pandas\u date']
的类型为
pandas.core.series.series
。您想要的是获得
dtype
,因此您只需执行
data\u raw['pandas\u date'].dtype

data\u raw['pandas\u date']=pd.to\u datetime(data\u raw['pandas\u date'])


这是正确的,如果您稍后再次执行
data\u raw['pandas\u date'].dtype
,您将看到它是
datetime[64]
,谢谢您的快速回复。但是,当我使用
data\u raw['pandas\u date']时。dtype
通过键入:
data\u raw['pandate'].dtype.datetime.date.today().year
它给了我一个错误
'numpy.dtype'对象没有属性“datetime”
。我很困惑,无法看到上面的答案。使用
导入datetime as dt
将年份设置为
new.dt.year
。此外,提取年份是一个单独的问题。因此,如果您原来的问题已经得到回答,您应该接受答案a然后在单独的帖子中发布第二个问题谢谢你的快速回复。但是当我使用
data_raw['pandas_date'].dtype
通过键入:
data_raw['pandas_date'].dtype.datetime.date.today()从中获取年份信息时.year
它给了我一个错误
'numpy.dtype'对象没有属性“datetime”
。我很困惑,无法看到上面的答案。使用
导入datetime as dt
将年份设置为
new.dt.year
。此外,提取年份是一个单独的问题。因此,如果您原来的问题已经得到回答,您应该接受答案a将第二个问题单独张贴在帖子中