why strftime convert datetime to object format? - python

i converted date from y/m/d to d/m/y format in a data-frame using
from pandas import pd
df['Date'] = pd.to_datetime(df['Date'], format='%Y-%m-%d ').dt.strftime('%d/%m/%Y')
but after this code execute the df['Date'] field become object format,when i try to convert datetimeformat it again become y/m/d form ,is there any solution for this?

Related

Convert Date to pandas from ISO 8601 format

I have a date it look like this
2021-12-14T20:32:34Z
how can i convert it to someting like this
2021-12-14 20:32
If you want to do this using Pandas, you can use pandas to convert iso date to datetime object then strftime to convert timestamp into string format
import pandas as pd
import datetime
iso_date = '2021-12-14T20:32:34Z'
fmt = '%Y-%m-%d %H:%M'
pd.to_datetime(iso_date).strftime(fmt)
to apply it to a series of dates of DataFrame column you can replace iso_date with the series of dates and use this code
pd.to_datetime(iso_date).dt.strftime(fmt)

Problem converting time into pandas datetime

I am trying to convert a date column containing only hours, minutes and seconds ito a datetime form using pandas.to_datetime(). However, it adds year and date automatically. I also tried using
pandas.to_datetime(df["time"], format = %H:%M:%S").dt.time, again the data type remains object.
Is there any method that can change into datetime format without year and date?
Something like this?
df['Time'] = pd.to_datetime(df['Time'], format='%H:%M:%S', errors='ignore')
put .dt.time on the end
df['Time'] = pd.to_datetime(df['Time'], format='%H:%M:%S', errors='ignore').dt.time

Python Pandas converting datestring to datetime

I have a datestring in thew following format which is month/day/year and then time
print(df):
Date
6/06/20 4:41pm
6/06/20 5:41pm
I am trying to convert using pd.to_datetime and have used the following:
df['Date'] = pd.to_datetime(df['Date'], format='%m%d%Y:%H:%M.%f')
but I cant match the format. Does anyone know the format for this particular sting? thank you very much!
Data
df=pd.DataFrame({'Date':['6/06/20 4:41pm','6/06/20 5:41pm']})
df['Date']=pd.to_datetime(df['Date'])
you are missing part of the format
df['Date'] = pd.to_datetime(df['Date'], format='%m/%d/%Y %H:%M.%f')

What is the correct pd.to_datetime format for strings of the form '12/2/14 0:01'?

I'm trying to convert the column 'DateTime' of my pandas df to DateTime format. The following doesn't work, how can I specify the format when my strings are of the form '12/2/14 0:01'?
df['DateTime'] = pd.to_datetime(df['DateTime'], format='%m/%d/%YY %H:%M').dt.time
Better yet, can I simply break it apart into two separate columns for date and time?
from datetime import datetime
df['DateTime'] = df['DateTime'].apply(lambda x: datetime.strptime(x, '%m/%d/%y %H:%M'))

How to convert String variable in data frame to date in python

from datetime import datetime as dt
from datetime import date
clv['Date']=datetime.strptime(clv['Date'], "%m/%d/%Y").date()
You could use pd.to_datetime. After that you will convert your date string to Series of datetime64 dtype. Then you could access to date with dt.date:
clv['Date']=pd.to_datetime(clv['Date'], format="%m/%d/%Y").dt.date

Categories

Resources