我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

关于时间聚合函数python的信息

利用Python进行数据分析(9)-重采样resample和频率转换

Python-for-data-重新采样和频率转换

成都创新互联主要从事成都做网站、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务北湖,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

重新采样指的是将时间序列从一个频率转换到另一个频率的过程。

但是也并不是所有的采样方式都是属于上面的两种

pandas中使用resample方法来实现频率转换,下面是resample方法的参数详解:

将数据聚合到一个规则的低频上,例如将时间转换为每个月,"M"或者"BM",将数据分成一个月的时间间隔。

每个间隔是半闭合的,一个数据只能属于一个时间间隔。时间间隔的并集必须是整个时间帧

默认情况下,左箱体边界是包含的。00:00的值是00:00到00:05间隔内的值

产生的时间序列按照每个箱体左边的时间戳被标记。

传递span class="mark"label="right"/span可以使用右箱体边界标记时间序列

向loffset参数传递字符串或者日期偏置

在金融数据中,为每个数据桶计算4个值是常见的问题:

通过span class="girk"ohlc聚合函数/span能够得到四种聚合值列的DF数据

低频转到高频的时候会形成缺失值

ffill() :使用前面的值填充, limit 限制填充的次数

Python聚合函数使用

#encoding=utf-8

def getRows():

names = ["A", "B"]

rows = [

[1, 'm'],

[2, 'm'],

[3, 'q'],

[3, 'q'],

[2, 'q'],

[1, 's'],

[4, 's'],

[2, 's'],

[1, 's'],

[3, 'm']

]

rs = []

for row in rows:

rs.append(dict(zip(names, row)))

return rs

def count():

rs = getRows()

# 取所有B=m的行

rs = [r for r in rs if r["B"] == 'm']

rs = sorted(rs, key=lambda r: r["B"])

# 计算数量

result = {}

for r in rs:

if r["A"] in result:

result[r["A"]] += 1

else:

result[r["A"]] = 1

return result

print count()

python--pandas分组聚合

groupby 方法是pandas中的分组方法,对数据框采用 groupby 方法后,返回的是 DataFrameGroupBy 对象,一般分组操作后会进行聚合操作。

对数据框按 A 列进行分组,产生分组数据框。分组数据框是可迭代对象,可以进行循环遍历,可以看出在循环中,每个元素的类型是元组,

元组的第一个元素是分组值,第二个元素是对应的分组数据框。

可以对分组后的数据框直接使用聚合方法 agg ,对分组数据框的每一列计算统计函数值。

可以根据数据框外的序列数据对数据框进行分组,需要注意 序列长度需要与数据框行数相同 。

可以根据数据框的多列对数据框进行分组。

根据 A , B 列进行分组,然后求和。

可以根据索引对数据框进行分组,需要设置 level 参数。

数据框只有一层索引,设置参数 level=0 。

当数据框索引有多层时,也可以根据需求设置 level 参数,完成分组聚合。

设置 level 参数,如需要根据第一层索引,即 id1 进行分组,可以设置 level=0 或 level='id1' 完成分组聚合。

分组后一般会进行聚合操作,用 agg 方法进行聚合。

对分组后数据框使用单个函数进行聚合,单个聚合函数会对每列进行计算,然后合并返回。聚合函数以字符串的形式传入。

可以对分组后的数据指定列进行分组聚合。需要注意 子列需要用[]包裹 。

聚合函数也可以传入自定义的匿名函数。

聚合函数可以是多个函数。聚合时,多个聚合函数会对每列进行计算,然后合并返回。聚合函数以列表的形式传入。

聚合返回后的数据列名有两层索引,第一层是聚合的列名,第二层是使用的聚合函数名。如果需要对返回的聚合函数名重命名,

需要在传参时,传入元组,第一个元素为聚合函数名,第二个元素为聚合函数。

同样,也可以传入匿名函数。

如果需要对不同的列进行不同的聚合计算,则需要传入字典的形式。

可以重命名聚合后的列名,注意 只能对一列传入一个聚合函数时有效 。


当前文章:关于时间聚合函数python的信息
转载来源:http://mswzjz.cn/article/docicdg.html

其他资讯