Расширенный Python — тип данных datetime

Эта статья является неким расширением, основанным на предыдущей статье, а также в процессе использования используются другие сторонние библиотеки pandas of python.

В основном он анализирует объекты datetime библиотеки datetime и вводит связанные типы данных, такие как: datedelte, detetime и т. д. В конце концов, разные типы могут делать разные вещи.

Все данные, используемые в этой статье, находятся внизу статьи.Друзья, нуждающиеся в помощи, могут выполнять практические операции, чтобы проверить свои результаты обучения.Если есть какие-либо плохие записи, добро пожаловать на критику и исправление!

Нечего сказать, просто перейдите к коду! ! !

импортированная библиотека

from datetime import datetime
import pandas as pd

основное использование

now = datetime.now()  # 获取当前时间,形式为2022-01-23 19:52:01.037051
ago = datetime(1970,1,1)
distance = now - ago  # 可以进行数学运算,返回天数和当前时间(时分秒),类型为timedelta

data = pd.read_csv('country_timeseries.csv')  # Date列包含日期信息,info指出属于字符串对象
data['date'] = pd.to_datetime(data['Date'])  # 通过to_datetime方法转换为日期格式,默认年-月-日
data['dt'] = pd.to_datetime(data['Date'],format='%m/%d/%Y')  # 可以指定形式,仍是datetime类型

"""加载包含日期的数据"""
df = pd.read_csv('country_timeseries.csv', parse_dates=[0])  # 直接指定想要转换为日期的列,通过info方法可以查看数据

"""提取日期的各个部分"""
d = pd.to_datetime('2009-01-01 19:20:04.032561')  # 传入对象为字符串,会返回一个TimeStamp对象
print(d.year, d.month, d.day, d.hour, d.minute, d.second, sep='\n')  # 获取传入日期的各个部分

Если вы используете оператор импорта для импорта библиотеки даты и времени, вы должны добавить дату и время. Дата и время в коде является объектом в библиотеке. Причина, по которой вы пишете имя файла напрямую, не указывая абсолютный путь, заключается в том, что файл находится в текущий каталог, который основан на всех. Изучите основы импорта библиотек.

Вы можете распечатать каждое предложение кода, Знание библиотеки pandas — это просто импорт файлов здесь или преобразование типов данных. Если вам непонятно поведение strftime в формате, вы можете посмотреть мою предыдущую статью, которая в основном соответствует повседневному использованию.

Для кода в разделе «Загрузка различных частей даты», если входящие данные — это только год, месяц и день, он не может вывести свои часы, минуты и секунды, ведь создать что-то из ничего нереально. . Используйте операцию информационного атрибута, то есть ".info()", для просмотра типа данных каждого столбца.

"""日期运算与Timedelta"""
min_day = data['dt'].min()  # 获取最小时间
data['distance'] = data['dt'] - min_day  # 一定要同类型,获得时间差值,最终获得的列的数据类型为Timedelta

"""datetime方法"""
banks = pd.read_csv('banklist.csv', parse_dates=[5, 6])
banks['close_quarter'] = banks['Closing Date'].dt.quarter  # 获得季度信息,类型为数值型
banks['close_year'] = banks['Closing Date'].dt.year  # 获取年份信息
quantity = banks.groupby(['close_year']).size()  # 获取倒闭银行数量

Банки здесь — это данные о банках-банкротах. parse_dates=[5,6] преобразует данные в столбцах 6 и 7 в типы даты, а индекс начинается с 0. dt — это объект по умолчанию для получения информации о квартале и годе, который используется для разделения необходимых частей даты.

Данные следующие, уу, кому это нужно, добро пожаловать! В нем есть файл tesla.csv, в котором хранятся данные определенного запаса за последние 5 лет.

https://pan.baidu.com/s/1SgoR2_VTACgoGtr2KhUI9Q?pwd=1234 icon-default.png?t=M0H8https://pan.baidu.com/s/1SgoR2_VTACgoGtr2KhUI9Q?pwd=1234

Код извлечения: 1234

Если вы не понимаете, добро пожаловать, чтобы оставить сообщение в области комментариев! ! !

Guess you like

Origin blog.csdn.net/qq_60471758/article/details/122657937