【问题标题】:python pandas date time conversion to datepython pandas日期时间转换为日期
【发布时间】:2016-01-27 12:59:07
【问题描述】:

我希望将日期时间转换为 pandas datetime 系列的日期。

我已经列出了下面的代码:

df = pd.DataFrame()

df = pandas.io.parsers.read_csv("TestData.csv", low_memory=False)

df['PUDATE'] = pd.Series([pd.to_datetime(date) for date in df['DATE_TIME']])

df['PUDATE2'] = datetime.datetime.date(df['PUDATE'])  #Does not work

谁能指引我正确的方向?

【问题讨论】:

标签: python date datetime pandas


【解决方案1】:

您可以使用 .dt 方法访问 Pandas 系列的 datetime 方法(与使用 .str 访问字符串方法的方式类似。对于您的情况,您可以提取您的日期日期时间列为:

df['PUDATE'].dt.date

【讨论】:

  • df = pd.DataFrame() df=pandas.io.parsers.read_csv("TestData.csv",low_memory=False) df['PUDATE'] = \ pd.Series([pd.to_datetime(date) for date in df['ORIGIN_EXP_PKP_DATE_TIME']]) df['test'] = df['PUDATE'].dt.date AttributeError: 'Series' object has no attribute 'dt' 是我运行上述代码时遇到的错误
【解决方案2】:

这是从 pandas 获取月份日期的简单方法

    #create a dataframe with dates as a string

    test_df = pd.DataFrame({'dob':['2001-01-01', '2002-02-02', '2003-03-03', '2004-04-04']})

    #convert column to type datetime
    test_df['dob']= pd.to_datetime(test_df['dob'])

    # Extract day, month , year  using dt accessor
    test_df['DayOfMonth']=test_df['dob'].dt.day
    test_df['Month']=test_df['dob'].dt.month
    test_df['Year']=test_df['dob'].dt.year

【讨论】:

    【解决方案3】:

    我认为您需要指定格式,例如

    df['PUDATE2']=datetime.datetime.date(df['PUDATE'], format='%Y%m%d%H%M%S')
    

    所以你只需要知道你使用的是什么格式

    【讨论】:

    • 运行下面列出的代码我得到以下错误AttributeError: type object 'datetime.datetime' has no attribute 'datetime'df['PUDATE2']=datetime.datetime.date(df['PUDATE'], format='%Y-%m-%d') df['PUDATE2'].head()
    猜你喜欢
    • 1970-01-01
    • 2023-03-17
    • 2016-03-21
    • 2022-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多