python - 在统计上下文中处理关联数据的正确方法
问题描述
我有几个来自实验设置的数据点。实验进行了数百次。对于每个实验,测量了定义时间 ( t_1
- t_5
) 的 5 个数据点。
在这个草图 中,显示了这些测量的平均值和标准偏差。
我主要通过执行以下操作获得了这些结果:
import numpy as np
datas = [data0, data1, data2, data3, data4]
datasMean=[]
datasStd=[]
for data in datas:
datasMean.append(data.mean())
datasStd.append(data.std())
使用一些统计分析,我想了解我的假设,即有时t_4
测量值确实低于其他时间 - 与该实验中的其他数据点相关。
有什么方法可以证明这个假设是正确的?我担心我的实验结果可能例如主要包括 40% 的绿色数据点和 40% 的蓝色数据点(或其他更复杂的分布,甚至更模糊),如图所示。
如何验证我的假设,即在大量实验运行中,与某个实验的其他数据点相比,数据点真的t_4
总是较低?
numpy
or (或其他包)的哪些功能scipy.stats
适合解决这个问题?
解决方案
这是否捕获了您的数据外观的一部分?:
Experiment t1 t2 t3 t4 t5
experiment1 a b c d e
experiment2 a b c d e
experiment3 a b c d e
experiment4 a b c d e
experiment5 a b c d e
其中 a、b、c、d 和 e 是在定义时间 t1-t5 记录的数据点。您想验证您的假设,即对于某个实验,d 总是低于 a、b、c 和 e?
这是可行的解决方案:调整数据部分的外观。
Experiment t1 t2 t3 t4 t5
experiment1 2 10 4 8 1
experiment2 3 3 2 5 2
experiment3 9 2 7 6 3
experiment4 4 1 6 4 5
experiment5 6 20 3 5 7
import pandas as pd
import numpy as np
#change column dtype to numeric
df[['t1', 't2','t3', 't4','t5']] = df[['t1', 't2','t3', 't4','t5']].apply(pd.to_numeric)
# new column holding minimum value occurring in every row
df['min_value'] = df.idxmin(axis=1)
结果:
Experiment t1 t2 t3 t4 t5 min_value
experiment1 2 10 4 8 1 t1
experiment2 3 3 2 5 2 t3
experiment3 9 2 7 6 3 t2
experiment4 4 1 6 4 5 t2
experiment5 6 20 3 5 7 t3
推荐阅读
- python-3.x - 自动化脚本在本地正常工作,但不适用于容器
- javascript - VUE如何替换json变量
- php - 如何更改 Swagger UI 中生成的 APi Platform 中的 SQL 查询
- c# - C# 中的 SQL 参数化,使用 SQL 声明的变量
- dart - 为什么这个函数最终返回?
- github - 使用 GitHub API 提交的最接近标签
- r - 绑定数组的维度
- split - New Line Arduino 拆分字符串 - GSM 模块响应
- opencv - Gtk-WARNING **:无法打开显示:来自 gcp ubuntu
- c - 我试图实现链表以在节点中存储学生详细信息