求平均值Pandas
下表为原始数据序号数据A数据B
13020
23121
33222
43323
53424
63525
73626
83727
93828
103929
114030
124131
134232
144333
154434
164535
174636
184737
194838
204939
如何根据上表算出下表结果(数据A的平均值为:每5条数据平均,不足条数据,按照实际条数计算),请告知告示使用Pandas如何做
序号数据A数据A的平均值数据B数据B的平均值
130322022
231332123
332342224
433352325
534362426
635372527
736382628
837392729
938402830
1039412931
1140423032
1241433133
1342443234
1443453335
1544463436
1645473537
174647.53637.5
1847483738
194848.53838.5
2049493939
数据A的平均值为:每5条数据平均,不足条数据,按照实际条数计算???? 永恒的蓝色梦想 发表于 2020-4-29 10:56
????
从索引所在得位置 往下数五条数据 计算平均值 填再当前索引位置 wp231957 发表于 2020-4-29 11:16
从索引所在得位置 往下数五条数据 计算平均值 填再当前索引位置
大概就是这个意思,当不足五条数据时,按时实际条数计算平均值
不知道怎么写 测试出来了,不过感觉不好,数据量大的时候估计会很慢,请问是否有更好的方法<pre style="background-color:#ffffff;color:#333333;font-family:'Consolas';font-size:9.8pt;"><span style="color:#a71d5d;">import </span>pandas <span style="color:#a71d5d;">as </span>pd</pre><pre style="background-color:#ffffff;color:#333333;font-family:'Consolas';font-size:9.8pt;">
</pre>df = pd.DataFrame(table) # 假设表1为table
df_Row = df .index
A_mean = []
B_mean = []
for i in df_Row:
x = i + 5
if x > max(df_Row):
x = max(df_Row)
A_mean.append(Rate.loc.mean())
B_mean.append(Rate.loc.mean())
df_A = pd.DataFrame(A_mean,columns=['A平均值'])
df_B = pd.DataFrame(B_mean,columns=['B平均值'])
df = pd.concat(,axis=1)
页:
[1]