当前位置: 首页 > 科技观察

Pandas

时间:2023-03-13 02:13:24 科技观察

Python程序中常用的七个时间戳处理函数让我们可以使用NumPytimedelta64和datetime64来操作和检索时间序列数据。sklern库中也提供了时间序列功能,但是pandas为我们提供了更多有用的功能。Pandas库中有四种与时间相关的日期时间概念:日期时间表示特定的日期和时间及其各自的时区。它在pandas中的数据类型是datetime64[ns]或datetime64[ns,tz]。Timedeltas:Timedeltas代表时间差,它们可以有不同的单位。示例:“天、小时、减号”等。换句话说,它们是DateTime的子类。时间跨度:时间跨度称为固定周期内的相对频率。时间跨度的数据类型是period[freq]。日期偏移量:日期偏移量有助于从当前日期计算所选日期,日期偏移量在pandas中没有特定的数据类型。时间序列分析至关重要,因为它们可以帮助我们了解是什么影响了系统随时间的趋势或模式。借助数据可视化分析并做出后续决策。现在让我们看几个使用这些函数的例子1.查找特定日期的某一天的名称importpandasaspdday=pd.Timestamp('2021/1/5')day.day_name()上面的程序是显示特定日期的名称。第一步是导入pandas并使用Timestamp和day_name函数。“Timestamp”函数用于输入日期,“day_name”函数用于显示指定日期的名称。2.进行算术计算importpandasaspdday=pd.Timestamp('2021/1/5')day1=day+pd.Timedelta("3day")day1.day_name()day2=day1+pd.offsets.BDay()day2.day_name()在第一个代码中,显示三天后的日期名称。“Timedelta”功能允许以任何天为单位(天、小时、分钟、秒)输入时差。在第二个代码中,使用“offsets.BDay()”函数显示下一个工作日。换句话说,这意味着在星期五之后,下一个工作日是星期一。3.利用时区信息进行日期时间转换获取时区信息/Pacific")代码目标是更改日期的时区。首先,您需要找到当前时区。这是由“tz_localize()”函数完成的。我们现在知道当前时区是“UTC”。使用“tz_convert()”函数转换为美国/太平洋时区。4.将pandas导入为pdimportnumpyasnpfromdatetimeimportdatetimedat_ran=pd.date_range(start='1/1/2021',end='1/5/2021',freq='Min')print(type(dat_ran[110]))5.创建日期系列importpandasaspdimportnumpyasnpfromdatetimeimportdatetimedat_ran=pd.date_range(start='1/1/2021',end='1/5/2021',freq='Min')print(dat_ran)代码以上产生一系列日期系列。使用“date_range”函数,输入开始日期和结束日期以获得该范围内的日期。6.操作datesequenceimportpandasaspdfromdatetimeimportdatetimeimportnumpyasnpdat_ran=pd.date_range(start='1/1/2019',end='1/08/2019',freq='Min')df=pd.DataFrame(dat_ran,columns=['date'])df['data']=np.random.randint(0,100,size=(len(dat_ran)))print(df.head(5))在上面代码中,使用“DataFrame”函数将字符串类型转换为DataFrame。最后一个“np.random.randint()”函数是随机生成一些假设数据。7.使用时间戳数据对数据进行切片importpandasasppdfromdatetimeimportdatetimeimportnumpyasnpdat_ran=pd.date_range(start='1/1/2019',end='1/08/2019',freq='Min')df=pd.DataFrame(dat_ran,columns=['date'])df['data']=np.random.randint(0,100,size=(len(dat_ran)))string_data=[str(x)forxindat_ran]print(string_data[1:5])上面的代码是第6条的延续,创建dataframe并映射到随机数后,对list进行切片。总之,本文通过示例演示了时间序列和日期函数的所有基础知识。建议参考本文内容尝试pandas中的其他日期函数进行更深入的学习,因为这些函数在我们的实际工作中非常重要。