- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在处理一个数据集,该数据集包含多个用户的月度信息。每个用户都有不同的时间范围。每个用户也缺少数据。我想做的是根据每个用户的时间范围(从 min.time 到 max.time 以月为单位)为每个用户填写缺失的数据。
由于数据模式属于时间序列,线性插值没有意义。我还根据“用户”和“日期”为数据框设置了多索引,但是基于“时间”的插值不起作用(因为它尚未实现)
x = pd.DataFrame({'user': ['a','a','a','a','a','a','a','a','b','b','b','b','b','b','b','b','b','c','c','c','c','c','c','c','c'],'dt':['2015-01-01','2015-02-01','2015-03-01','2015-04-01','2015-05-01','2015-06-01','2015-07-01','2015-08-01','2016-01-01','2016-02-01','2016-03-01','2016-04-01','2016-05-01','2016-06-01','2016-07-01','2016-08-01','2016-09-01','2017-01-01','2017-02-01','2017-03-01','2017-04-01','2017-05-01','2017-06-01','2017-07-01','2017-08-01'], 'val': [1,33,np.nan,1,np.nan,4,2,np.nan,66,2,5,1,np.nan,np.nan,7,5,np.nan,1,np.nan,7,4,np.nan,5,3,np.nan]})
user dt val
0 a 2015-01-01 1
1 a 2015-02-01 33
2 a 2015-03-01 NaN
3 a 2015-04-01 1
4 a 2015-05-01 NaN
5 a 2015-06-01 4
6 a 2015-07-01 2
7 a 2015-08-01 NaN
8 b 2016-01-01 66
9 b 2016-02-01 2
10 b 2016-03-01 5
11 b 2016-04-01 1
12 b 2016-05-01 NaN
13 b 2016-06-01 NaN
14 b 2016-07-01 7
15 b 2016-08-01 5
16 b 2016-09-01 NaN
17 c 2017-01-01 1
18 c 2017-02-01 NaN
19 c 2017-03-01 7
20 c 2017-04-01 4
21 c 2017-05-01 NaN
22 c 2017-06-01 5
23 c 2017-07-01 3
24 c 2017-08-01 NaN
在上面的数据集中,“val”列有几个缺失值,我正在弄清楚如何为多个“用户”自动执行此过程。
此外,考虑到没有,为每个用户构建时间序列模型是否有意义。每个用户的数据点数?
任何输入/解决方法将不胜感激。
谢谢,卢克。
最佳答案
你可以使用 Groupby + apply根据用户填写缺失值。无需为每个用户创建系列。
这是一个如何填写缺失数据的示例(除了这些方法之外,您还可以创建自己的函数):
1.用 interpolate 对每个组进行插值.填充fillna
x['val']=x.groupby('user')['val'].apply(lambda x: x.fillna(x.interpolate()))
print(x)
user dt val
0 a 2015-01-01 1.0
1 a 2015-02-01 33.0
2 a 2015-03-01 17.0
3 a 2015-04-01 1.0
4 a 2015-05-01 2.5
5 a 2015-06-01 4.0
6 a 2015-07-01 2.0
7 a 2015-08-01 2.0
8 b 2016-01-01 66.0
9 b 2016-02-01 2.0
10 b 2016-03-01 5.0
11 b 2016-04-01 1.0
12 b 2016-05-01 3.0
13 b 2016-06-01 5.0
14 b 2016-07-01 7.0
15 b 2016-08-01 5.0
16 b 2016-09-01 5.0
17 c 2017-01-01 1.0
18 c 2017-02-01 4.0
19 c 2017-03-01 7.0
20 c 2017-04-01 4.0
21 c 2017-05-01 4.5
22 c 2017-06-01 5.0
23 c 2017-07-01 3.0
24 c 2017-08-01 3.0
<强>2。 ffill方法:
x['val']=x.groupby('user')['val'].apply(lambda x: x.ffill())
user dt val
0 a 2015-01-01 1.0
1 a 2015-02-01 33.0
2 a 2015-03-01 33.0
3 a 2015-04-01 1.0
4 a 2015-05-01 1.0
5 a 2015-06-01 4.0
6 a 2015-07-01 2.0
7 a 2015-08-01 2.0
8 b 2016-01-01 66.0
9 b 2016-02-01 2.0
10 b 2016-03-01 5.0
11 b 2016-04-01 1.0
12 b 2016-05-01 1.0
13 b 2016-06-01 1.0
14 b 2016-07-01 7.0
15 b 2016-08-01 5.0
16 b 2016-09-01 5.0
17 c 2017-01-01 1.0
18 c 2017-02-01 1.0
19 c 2017-03-01 7.0
20 c 2017-04-01 4.0
21 c 2017-05-01 4.0
22 c 2017-06-01 5.0
23 c 2017-07-01 3.0
24 c 2017-08-01 3.0
x['val']=x.groupby('user')['val'].apply(lambda x: x.fillna(x.mean()))
print(x)
user dt val
0 a 2015-01-01 1.000000
1 a 2015-02-01 33.000000
2 a 2015-03-01 8.200000
3 a 2015-04-01 1.000000
4 a 2015-05-01 8.200000
5 a 2015-06-01 4.000000
6 a 2015-07-01 2.000000
7 a 2015-08-01 8.200000
8 b 2016-01-01 66.000000
9 b 2016-02-01 2.000000
10 b 2016-03-01 5.000000
11 b 2016-04-01 1.000000
12 b 2016-05-01 14.333333
13 b 2016-06-01 14.333333
14 b 2016-07-01 7.000000
15 b 2016-08-01 5.000000
16 b 2016-09-01 14.333333
17 c 2017-01-01 1.000000
18 c 2017-02-01 4.000000
19 c 2017-03-01 7.000000
20 c 2017-04-01 4.000000
21 c 2017-05-01 4.000000
22 c 2017-06-01 5.000000
23 c 2017-07-01 3.000000
24 c 2017-08-01 4.000000
关于python-3.x - Pandas - 在多个时间序列的组内插值/估算缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58284671/
架构设计(九):估算 作者: Grey 。 原文地址: 博客园:架构设计(九):估算 。 CSDN:架构设计(九):估算 。 估算在系统设计中非常重要,这决定了你的设计是否可以满足要求,
我有以下 JavaScript 代码,它使用 sql.js库与远程 SQL 数据库通信。 var xhr = new XMLHttpRequest(); xhr.open('GET', 'https:
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 4年前关闭。 Improve this questi
我正在使用启用了 ARC 的 Cocos2d 2.0。我的游戏是一个随机生成的游戏,所以我需要在游戏中间的场景中加载/卸载纹理(spritesheet-batchnode)。我正在尝试从文件中删除 s
我有一个不完整的数据框,incomplete_df,如下所示。我想用相应 id 的平均 amount 来估算缺失的 amount。如果该特定 id 的平均值本身就是 NaN(参见 id=4),我想使用
我正在研究 NOAA AVHRR 31 年的每日海面温度 (SST) 数据。数据采用 NetCDF 格式,维度为 28(经)x 40(纬度)x 11686(天)。我应该计算每月的气候平均值(例如 31
我想为给定现有值的变量估算缺失值。 在 var2 ,我们注意到有很多NA s。 如果任何 2 个 ID 相同,则它们的值 var2是相同的。 如果 id 没有 var2 的值,就像 id==2 的情况
我想了解(大概)读取 Android SD 卡上存储的大文件(50MB 到 100MB)需要多长时间。我在 Google Nexus One 上的 Android 2.3.3 上使用以下代码。这会给我
估计 json 对象(如果 JSon 大小可用)将在 MongoDB 中占用多少存储内存的最佳方法是什么?有某种相关公式吗? 最佳答案 有 Object.bsonsize() 方法 mongo She
我有缺失值的数据框 (DF1),我想从不同的数据框 (DF2) 中估算这些缺失值,同时保留索引而不对它们进行排序(非常重要)。我正试图找到最有效的方法来做到这一点。 DF1: index id t
我正在尝试估算将返回大量结果的应用引擎查询的结果总量。 为了做到这一点,我为每个实体分配了一个介于 0 和 1 之间的随机 float 。然后我执行了我想用以下 3 个设置估计总结果的查询: * I
我正在尝试制作一个简单的 js 机器人,它检查每个区 block 的 eth(或链的主要 token )并将其发送到另一个钱包。 我有一个工作机器人: const { ethers } = requi
我最近一直在考虑将 Azure 作为许多具有 MSSql 数据库后端的小型 asp.net 网站的托管平台。我目前使用非 Microsoft 主机,每月收取固定费用。 我看过的 Azure 演示和网络
我是 C++ 新手。我正在尝试使用计算机系统的随机数生成器根据 Ernesto Cesaro 定理统计确定 Pi 的值。但是我现在所做的可以输入一个种子数并生成100个伪随机数,然后估计pi的值。生成
在我看来,我并不完全理解 FLOPS 的概念。在 CUDA SAMPLES 中,有 Matrix Multiplication Example (0_Simple/matrixMul)。在此示例中,每
我是一名优秀的程序员,十分优秀!