首页 > 其他分享 >软件测试|数据处理神器pandas教程(七)

软件测试|数据处理神器pandas教程(七)

时间:2023-06-20 14:33:40浏览次数:48  
标签:24 00 datetime 神器 pd 2023 date pandas 软件测试

在这里插入图片描述

前言

当进行数据分析时,我们会遇到很多带有日期、时间格式的数据集,在处理这些数据集时,可能会遇到日期格式不统一的问题,此时就需要对日期时间做统一的格式化处理。比如“Friday, March 24, 2023”可以写成“24/3/23”,或者写成“03-24-2023”。

获取更多免费技术资料,请点击!

日期格式化符号

在对时间进行格式化处理时,它们都有固定的表示格式,比如小时的格式化符号为%H ,分钟简写为%M ,秒简写为%S。下表对常用的日期格式化符号做了总结:

符号 说明
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地英文缩写星期名称
%A 本地英文完整星期名称
%b 本地缩写英文的月份名称
%B 本地完整英文的月份名称
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%U 一年中的星期数(00-53)星期天为星期的开始
%j 年内的一天(001-366)
%c 本地相应的日期表示和时间表示

Python时间处理

在python中,我们可以通过内置的 datetime方法来处理时间,下面是我们的一组示例:

from datetime import datetime
#将日期定义为字符串
# date_str1 = 'Friday, March 24, 2023'
data_str1 = 'March 24, 2023'
date_str2 = '24/3/23'
date_str3 = '24-03-2023'
#将日期转化为datetime对象
# dmy_dt1 = datetime.strptime(date_str1, '%A,%B%d,%Y')
dmy_dt1 = datetime.strptime(data_str1, '%b%d, %Y')
dmy_dt2 = datetime.strptime(date_str2, '%d/%m/%y')
dmy_dt3 = datetime.strptime(date_str3, '%d-%m-%Y')
#处理为相同格式,并打印输出
print(dmy_dt1)
print(dmy_dt2)
print(dmy_dt3)

--------------------
输出结果如下:
2023-03-24 00:00:00
2023-03-24 00:00:00
2023-03-24 00:00:00

注:strftime() 可以将 datetime 类型转换为字符串类型,恰好与 strptime() 相反。

Pandas时间处理

除了使用 Python 内置的 strptime() 方法外,你还可以使用 Pandas 模块的 pd.to_datetime() 和 pd.DatetimeIndex() 进行转换。

  1. to_datetime()

通过 to_datetime() 直接转换为 datetime 类型

import pandas as pd
import numpy as np
date = ['2023-03-23 12:00:00','2023-03-24 18:00:00']
pd_date=pd.to_datetime(date)
df=pd.Series(np.random.randn(2),index=pd_date)
print(df)
----------------------
输出结果如下:
2023-03-23 12:00:00   -0.859986
2023-03-24 18:00:00   -0.085590
dtype: float64
  1. DatetimeIndex()

使用 Datetimeindex() 函数设置时间序,示例如下:

import pandas as pd
import numpy as np

date = pd.DatetimeIndex(['8/8/2008', '8/21/2016', '6/29/2007', '20/8/2009', '10/1/2020'])
dt = pd.Series(np.random.randn(5),index = date)
print(dt)
-----------------------------
输出结果如下:
2008-08-08   -1.285458
2016-08-21    0.420290
2007-06-29   -0.897028
2009-08-20   -0.357196
2020-10-01    1.653617
dtype: float64

总结

本文主要介绍了pandas的时间处理的内容,后面我们将介绍使用pandas时间序列的内容。

获取更多免费技术资料,请点击!

标签:24,00,datetime,神器,pd,2023,date,pandas,软件测试
From: https://www.cnblogs.com/hogwarts/p/17493577.html

相关文章

  • 【实用软件测试教程】6-功能测试
    文章目录6功能测试6.1系统测试概论6.2功能测试概述6.3功能测试的策略6.4功能测试的内容6.5功能测试的方法6.6.QuickTestProfessional(QTP)6功能测试功能模块是系统测试阶段的重点内容,软件系统开发的首要目标是确保功能正确。功能测试主要是根据软件系统的特征、操作描述和......
  • 软件测试的冒烟测试
    软件测试是软件开发过程中的一个非常重要的部分,能够有效地保证软件的质量和用户体验。而在软件测试中,冒烟测试被认为是一项非常关键的测试工作,因为它可以帮助团队快速定位软件中可能存在的问题,并及时进行修复。什么是冒烟测试?冒烟测试(SmokeTesting)也叫做构建验证测试(BuildVerific......
  • 软件测试四大测试
    单元测试是一种针对程序中最小可测试单元(通常是函数或方法)的测试方法。下面是进行单元测试的一般步骤:1.确定被测试的单元:选择要测试的函数或方法,并分析其输入、输出、边界条件等特性。2.编写测试用例:根据被测试单元的特性,编写测试用例,包括针对不同情况的测试输入和期望......
  • Loop or Iterate over all or certain columns of a dataframe in Python-pandas 遍历
    Inthisarticle,wewilldiscusshowtolooporIterateoverallorcertaincolumnsofaDataFrame?Therearevariousmethodstoachievethistask.Let’sfirstcreateaDataframeandseethat: Code:  Python3  #importpandaspackageim......
  • 从pandas dataframe保存csv文件,不带双引号
    为了保存来自pandasdataframe的csv文件,我尝试了以下方法:res.to_csv('seq_test.fa',header=False,index=False,sep='\t',quoting=csv.QUOTE_NONE)复制这给出了以下错误:needtoescape,butnoescapecharset如果我不使用quoting=csv.QUOTE_NONE。我通过以下方式......
  • 软件测试|Python科学计算神器numpy教程(一)
    前言之前我们使用matplotlib绘制了不一样的图形,其实在我们的绘制图像时,我们输入的数据都是经过处理之后再通过matplotlib以及pillow进行绘制的。我们在绘制图形的脚本里,引入了一个对数组执行数学运算和相关逻辑运算的第三方库——Numpy,当然numpy功能不止于此,它还是python科学计算的......
  • 软件测试|教你如何离线安装第三方库
    前言在日常工作生活中,我们有时需要在无法联网的设备中安装Python第三方库,在联网的情况下,我们安装第三方库只需要一条pip命令即可,运行命令之后,会自动开始下载;当我们在无法联网的情况下,我们就需要先行下载好第三方库,传输到未联网的电脑,并使用命令行安装。本文我们以安装requests库为......
  • 软件测试|pip安装第三方库报代理错误,怎么解决
    前言pip是我们使用python时最常用的一个工具,我们安装卸载更新Python的第三方库都是依靠这个命令的,即使我们是使用pycharm来管理我们的第三方库,本质上还是通过pip来实现第三方库的安装卸载更新的。因此,对于一些在使用pip时出现的报错,进行一些经验的总结就很有必要了。安装第三方库时......
  • 软件测试|web自动化测试神器playwright教程(二十七)
    前言使用selenium进行web自动化测试,如果我们打开了多个网页,进行网页切换时,我们需要先获取各个页面的句柄,通过句柄来区分各个页面,然后使用switch_to.window()实现切换,这样的操作比较麻烦,playwright的网页切换比selenium更为简单快捷。本文就给大家介绍一下playwright多个网页的切换......
  • 软件测试|web自动化测试神器playwright教程(二十三)
    前言我们在进行web自动化时,经常遇到一些不好操作的元素,普通的元素定位和操作容易报错,如果我们使用的selenium的话,就可以使用selenium调用js脚本进行操作。在playwright中也有类似的方法,使用page.evaluate()执行JavaScript脚本。page.evaluate()和page.evaluate_handle()之间的唯......