python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】

转换与处理时间序列数据  

转换字符串时间为标准时间:

Timestamp类型:最基础最常用。

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第1张图片

pd.to_datetime(data['lock_time'])#转换

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第2张图片

如果超出时间戳最大值,最小值,时间戳存储可能不成功 :

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第3张图片

DatatimeIndex与PeriodIndex函数【其实俺暂时不懂这俩能干啥呜呜呜】

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第4张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第5张图片

pd.DatetimeIndex(data['use_start_time'])pd.PeriodIndex(data['use_start_time'],freq='S')

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第6张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第7张图片

Timedelta类

不仅能够使用正数,也能使用负数;

可以轻松实现在某个时间上加减一天。

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第8张图片

data['lock_time']+pd.Timedelta(days=1,seconds=1)#后移一天(无月,年)+1秒

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第9张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第10张图片

使用分组聚合进行组内计算

groupby():    使用groupby方法拆分数据;

如果传入的是一个函数,则对索引进行计算并分组。

看实操:(以下的东西比较硬核)

当我想连接数据库读取数据时报错了:(主打的就是想试试数据库了好久没用过了)

import pandas as pd#622from sqlalchemy import create_engineengine = create_engine('mysql+pymysql://root;[email protected]:3306/test/?charset=utf8')

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第11张图片

没事,我们一个一个解决:

打开cmd,输入命令:

pip3 install pymysql

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第12张图片

完了之后再运行好像就没有报错了:(后面有问题再解决)

然后读取数据:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第13张图片

嘿嘿,又报错啦,解决一下:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第14张图片

改了一会儿发现是代码有些地方写错了,修改如下:

import pandas as pd#622from sqlalchemy import create_engineengine = create_engine('mysql+pymysql://root:[email protected]:3306/test?charset=utf8')

但是它依然有错误:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第15张图片

解决:(这是因为数据库没有导入该数据产生的错误)【以下步骤看不懂见后面详解1

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第16张图片

完了之后问题就解决完啦:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第17张图片

分组计算频数等其他操作:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第18张图片

在求和时遇到了一些问题,有小伙伴知道为啥可以为我解答一下,呜呜(难道是我导入数据的时候出问题了吗???)【已解决。文末附解决方案,见详解2,确实是导入的时候出问题勒,数据类型没有更换!

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第19张图片

使用agg方法聚合函数

agg()函数和aggregate()函数

可以使用agg方法一次求出当前数据中所有菜品销量和售价的总和与均值。

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第20张图片

​详解1:

​打开俺们的navicat,建一个test数据库:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第21张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第22张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第23张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第24张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第25张图片

后面的步骤全部默认​。(哈哈)

详解2:

在经过一段时间的琢磨后,我发现其实在前面读入数据的时候就已经产生一点错误了:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第26张图片

然鹅,NAN与NA的区别在于:(我简单理解为它们的数据类型不一样)

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第27张图片

所以,我们就要让右边这个改过来~~~:【这里需要说明一下,如果用的是pandas直接的函数打开是没有问题的,出现问题是因为我是以连接数据库那种方式打开,所以产生了一点子问题。问题就在于前面说了个后面的步骤都默认哈哈哈】

改的​方法:

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第28张图片

​很好,这样弄完了之后,前面的错误也都解决了不会出现像上面奇奇怪怪的数字了。

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第29张图片

python基础学习6【DatatimeIndex与PeriodIndex函数+Timedelta类+连接数据库+agg()函数和aggregate()函数】_第30张图片

后面的正确数据都不截图了。(此期逻辑很混乱是因为俺不想重新理思路写勒,如果以后有机会做到类似的再出2.0版本)

你可能感兴趣的:(pyhton,jupyter,数据库,数据库,python,开发语言)