Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Pandas中的条件平均

Pandas中的条件平均
EN

Stack Overflow用户
提问于 2020-01-26 19:47:35
回答 1查看 50关注 0票数 0

我有以下熊猫数据帧,在进行每日重采样和取平均值之前,最终取30天的滚动平均值:

代码语言:javascript
运行
AI代码解释
复制
import pandas as pd

df = pd.DataFrame()
df.index = ['2009-01-04', '2009-01-05', '2009-01-05', '2009-01-06', '2009-01-06', '2009-01-07', '2009-01-07', '2009-01-07']
df['score1'] = [84, 28, 38, 48, 23, 38, 22, 37]
df['score2'] = [83, 43, 12, 93, 64, 28, 29, 12]
df['score3'] = [92, 33, 11, 48, 23, 22, 12, 38]
df['score4'] = [43, 23, 41, 75, 93, 93, 23, 21]
df['condition1'] = [0, 0, 1, 0, 1, 0, 1, 0]
df['condition2'] = [1, 0, 1, 0, 0, 0, 0, 1]
df['condition3'] = [0, 0, 0, 1, 1, 0, 0, 1]

df = df.resample('D', how='mean')
df = df.rolling(30, min_periods=1).mean()

在这种情况下,我想做一个“条件平均”--即。当3个条件中的一个为==1时,只有带有1的“行”将计算其平均值。例如,时间3,在满足condition1和condition3的情况下,我们只对'2009-01-05‘做了38,12,11和41的平均值,而忽略了28,43,33,23。

EN

回答 1

Stack Overflow用户

发布于 2020-01-26 22:12:35

代码语言:javascript
运行
AI代码解释
复制
# convert your index to datetime:
df.index = pd.to_datetime(df.index)

# select the rows that meet condition:
df = df[df.loc[:,['condition1','condition2','condition3']].sum(axis=1)>0]

# resample
df = df.resample('D').mean()  # updated syntax

>>> print (df)
            score1  score2  score3  score4  condition1  condition2  condition3
2009-01-04    84.0    83.0    92.0    43.0         0.0         1.0         0.0
2009-01-05    38.0    12.0    11.0    41.0         1.0         1.0         0.0
2009-01-06    35.5    78.5    35.5    84.0         0.5         0.0         1.0
2009-01-07    29.5    20.5    25.0    22.0         0.5         0.5         0.5
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59922108

复制
相关文章
pandas中基于范围条件进行表连接
❝本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills ❞
派大星的数据屋
2023/09/04
3380
pandas中基于范围条件进行表连接
Pandas中求某一列中每个列表的平均值
前几天在Python最强王者交流群【冫马讠成】问了一道Pandas处理的问题,如下图所示。
前端皮皮
2022/08/17
5.2K0
Pandas中求某一列中每个列表的平均值
在 Pandas DataFrame 中应用 IF 条件的5种方法
现在,我们创建一个仅包含Jon, Bill, Maria and Emma等文本内容的DataFrame,IF 条件如下:
披头
2022/08/22
9.7K0
在 Pandas DataFrame 中应用 IF 条件的5种方法
平均互信息与条件熵
通信系统中若发端的符号为 X 收端的符号为 Y。如果是 一一对应信道, 接收到 Y 后对 X 的不确定性将完全消除: H(X|Y) = 0,一般情况 H(X|Y) < H(X), 即了解 Y 后对 X 的不确定度将减少。
timerring
2023/04/08
7340
平均互信息与条件熵
【pandas】pandas中的常见函数
4、pandas.get_dummies(data):将某列数据用one-hot编码表示
西西嘛呦
2020/08/26
2.1K0
「Python实用秘技15」pandas中基于范围条件进行表连接
  这是我的系列文章「Python实用秘技」的第15期,本系列立足于笔者日常工作中使用Python积累的心得体会,每一期为大家带来一个几分钟内就可学会的简单小技巧。
Feffery
2023/07/10
3410
「Python实用秘技15」pandas中基于范围条件进行表连接
Pandas中的对象
安装并使用PandasPandas对象简介Pandas的Series对象Series是广义的Numpy数组Series是特殊的字典创建Series对象Pandas的DataFrame对象DataFrame是广义的Numpy数组DataFrame是特殊的字典创建DataFrame对象Pandas的Index对象将Index看作不可变数组将Index看作有序集合
用户3577892
2020/06/11
2.8K0
pandas速成笔记(5)-快速分析平均值、总和
接上篇继续,记得小时候读书那会儿,还没有双减,每次考试完,大家最关心的就是全班的成绩分布,假如有下面一张成绩表:
菩提树下的杨过
2022/04/27
1.6K0
pandas速成笔记(5)-快速分析平均值、总和
统计学与pandas学习(二)——平均值
所谓统计量,是“用一个数字来概括数据的特征”。具体说就是“平均值”、“方差”和“标准方差”。
fanzhh
2019/08/20
1.6K0
pandas excel动态条件过滤并保存结果
一、概述 由于业务需求,需要对某个excel数据做查询。其中: excel文件名,不固定 sheet数量,不固定 过滤条件,不固定 二、分析需求 针对以上3个条件,都是不固定的。因此需要设计一个配置文件,内容如下: # 查询条件,多个条件,用逗号分隔 where_dict = {     # excel文件名     "file_name": "456.xlsx",     # 过滤条件     "rules": [         {             "sheet_name": "Sheet1",
py3study
2020/12/28
1.7K0
pandas excel动态条件过滤并保存结果
pandas中的drop函数_pandas replace函数
dropna()函数的作用是去除读入的数据中(DataFrame)含有NaN的行。 如下:
全栈程序员站长
2022/10/02
1.6K0
Python中的条件语句
Python中的条件语句是通过一条或多条语句的执行结果(True或者False)来决定要执行的代码块。主要通过if关键字实现,条件中的其他分支用else。
小博测试成长之路
2021/11/08
3.9K0
less中的条件判断
经过上一篇 less中的继承 的讲解之后,本章节开展的内容为 less 中的条件判断,less 中可以通过 when 给混合添加执行限定条件,只有条件满足 (为真) 才会执行混合中的代码,首先想要看这个条件判断首先需要有混合才可以,混合代码如下
程序员NEO
2023/09/29
7230
less中的条件判断
Sass中的条件判断
SASS 中的条件判断和 LESS 一样 SASS 中也支持条件判断,只不过 SASS 中的条件判断支持得更为彻底
程序员NEO
2023/09/29
5350
Sass中的条件判断
一行 pandas 代码搞定 Excel 条件格式!
Excel的 “条件格式” 是非常棒的功能,通过添加颜色条件可以让表格数据更加清晰的凸显出统计特性。
Python数据科学
2023/08/29
3210
一行 pandas 代码搞定 Excel 条件格式!
Pandas中的数据分类
本文中介绍的是Categorical类型,主要实现的数据分类问题,用于承载基于整数的类别展示或编码的数据,帮助使用者获得更好的性能和内存使用。
皮大大
2021/09/06
8.7K0
Pandas中的数据分类
掌握pandas中的transform
开门见山,在pandas中,transform是一类非常实用的方法,通过它我们可以很方便地将某个或某些函数处理过程(非聚合)作用在传入数据的每一列上,从而返回与输入数据形状一致的运算结果。
派大星的数据屋
2022/04/03
1.6K0
掌握pandas中的transform
pandas_VS_Excel条件统计人数与求和
C3=SUMPRODUCT((明细表!$B$2:$B$31=统计!B3)*(明细表!$E$2:$E$31=12)*1)
哆哆Excel
2022/10/25
1.2K0
pandas_VS_Excel条件统计人数与求和
pandas中的.update()方法
在Pandas中,update()方法用于将一个DataFrame或Series对象中的值更新为另一个DataFrame或Series对象中的对应值。这个方法可以用来在原地更新数据,而不需要创建一个新的对象。
deephub
2023/08/30
3700
pandas中的.update()方法
pandas100个骚操作:一行 pandas 代码搞定 Excel “条件格式”!
本篇是pandas100个骚操作系列的第 7 篇:一行 pandas 代码搞定 Excel “条件格式”!
Python数据科学
2021/01/29
2.7K0
pandas100个骚操作:一行 pandas 代码搞定 Excel “条件格式”!

相似问题

Pandas -条件行平均值

217

如何对pandas中的列进行条件平均

129

根据pandas中列的条件计算平均值

12

具有其他数据帧条件的平均Pandas Dataframe

216

基于列名的Pandas数据帧条件平均值

60
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档