非正态分布中因变量和自变量之间的相关性

时间:2018-10-22 13:35:17

标签: python statistics distribution correlation spss

编辑和更新:

我正在尝试使用Python或SPSS在一个或多个指标上衡量某些因素的有效性。我的数据集包含100次不同时间(例如三个月)接受治疗的患者的记录。数据集如下所示:

     a1  a2  a3  b1  b2  b3  metric1 metric2 metric3
1    1.2 2.3 3.5 90  58  29  2.1     3.2     1.2  
2    3.2 3.4 1.5 58  54  39  3.1     4.2     3.2  
...
100  3.1 1.3 2.5 36  63  45  5.1     4.2     3.2  

正如您所看到的,每位患者已记录了因子a(假设葡萄糖呈非正态分布)和因子b(假设治疗或药物呈正态分布)三次。在每个患者的拜访中,还记录了一个度量标准(例如健康度量标准)。现在,我想知道因子b在三次访问期间如何影响我的数据集中的指标。例如,在此数据集中,因子b与指标之间是否存在任何(共)关系?如果是这样,在什么程度上有意义?

我尝试了几种方法,包括单向Annova或发现样本均值之间的相关性,但均未成功。我知道这类数据应该通过重复测量方法进行分析,但是现在我有多个具有非正态分布的自变量,我有点困惑。我应该利用哪种统计方法?

感谢您的帮助!

1 个答案:

答案 0 :(得分:-1)

您目前拥有宽格式的数据,我还没有使用Python进行统计,但是对于R,大多数功能都需要长格式。

将数据帧转换为长数据。我认为您可以使用pd.melt()

df["Patient"] = df.index + 1
pd.melt(df, id_vars=["Patient"], value_vars=['b1', 'b2', 'b3'], var_name='Repeated', value_name='Glucose')

这是错误的,因为您需要对治疗进行相同的操作,不确定是否要重复两次,可以通过分离DF然后重新合并来做到这一点。

您的目标数据框应如下所示:

Patient     Glucose  GRepeated  Treatment  TReapeatedb1   Metric MRepeated
1           1.2      a1          90        b1             3.2     metric1  
2           3.2      a2          54        b2             4.2     metric2
...
100         3.1      a3          45        b3             3.2     metric3