Как преобразовать целое число в Datetime в Pandas DataFrame?

Опубликовано: 27 Марта, 2022

Давайте обсудим, как преобразовать в нем целое число в Datetime. Теперь, чтобы преобразовать целые числа в Datetime в Pandas DataFrame, мы можем использовать следующий синтаксис:

df[‘DataFrame Column’] = pd.to_datetime(df[‘DataFrame Column’], format=specify your format)

Примечание . Целочисленные данные должны соответствовать указанному формату.

Example #1:

Python

# importing pandas package
import pandas as pd
  
# creating a dataframe
values = {"Dates":  [20190902, 20190913, 20190921],
          "Attendance": ["Attended", "Not Attended", "Attended"]
          }
  
df = pd.DataFrame(values, columns=["Dates", "Attendance"])
  
# display
print(df)
print(df.dtypes)

Выход:

Как мы видим, тип данных для столбца «Даты» - целое число. Теперь, чтобы преобразовать его в Datetime, мы используем ранее упомянутый синтаксис. Поскольку в этом примере формат даты - ггггммдд , формат даты может быть представлен следующим образом:

 format = '% Y% m% d'

For our example, the complete code to convert the integers to DateTime would be:

Python

# importing pandas package
import pandas as pd
  
# creating the dataframe
values = {"Dates":  [20190902, 20190913, 20190921],
          "Attendance": ["Attended", "Not Attended", "Attended"]
          }
  
df = pd.DataFrame(values, columns=["Dates", "Attendance"])
  
# converting the integers to datetime format
df["Dates"] = pd.to_datetime(df["Dates"], format="%Y%m%d")
  
# display
print(df)
print(df.dtypes)

Выход :

Пример №2: Теперь предположим, что в фрейме данных есть дата в формате ггммдд . В этом случае формат даты теперь будет содержать букву «y» в нижнем регистре:

format="%y%m%d"

So the complete Python code would look as follows:

Python

# importing pandas package
import pandas as pd
  
# creating dataframe
values = {"Dates":  [190902, 190913, 190921],
          "Attendance": ["Attended", "Not Attended", "Attended"]
          }
  
df = pd.DataFrame(values, columns=["Dates", "Attendance"])
  
# changing the integer dates to datetime format
df["Dates"] = pd.to_datetime(df["Dates"], format="%y%m%d")
  
# display
print(df)
print(df.dtypes)

Выход:

Пример №3: Теперь предположим, что ваши целые числа содержат дату и время. В этом случае вам следует указать следующий формат:

 format = '% Y% m% d% H% M% S'

So the full Python code would be:

Python

# importing pandas package
import pandas as pd
  
# creating dataframe
values = {"Dates": [20190902093000, 20190913093000, 20190921200000],
          "Attendance": ["Attended", "Not Attended", "Attended"]
          }
  
df = pd.DataFrame(values, columns=["Dates", "Attendance"])
  
# changing integer values to datetime format
df["Dates"] = pd.to_datetime(df["Dates"], format="%Y%m%d%H%M%S")
  
# display
print(df)
print(df.dtypes)

Выход:

Пример №4: Рассмотрим этот DataFrame с микросекундами в наших значениях DateTime. В этом случае формат должен быть указан как:

 format = '% Y% m% d% H% M% S% F'

So the full Python code will be:

Python

# importing pandas package
import pandas as pd
  
# creating dataframe
values = {"Dates":  [20190902093000912, 20190913093000444
                     20190921200000009],
          "Attendance": ["Attended", "Not Attended", "Attended"]
          }
  
df = pd.DataFrame(values, columns=["Dates", "Attendance"])
  
# changing the integer dates to datetime format
df["Dates"] = pd.to_datetime(df["Dates"], format="%Y%m%d%H%M%S%F")
  
# display
print(df)
print(df.dtypes)

Выход:

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.