问题描述
我有两个不同长度的数据帧(一个是 16,另一个是 28)。我想使用 scipy.stats.wilcoxon 在这两者之间进行 Wilcoxon 检验。 为此,我创建了一个函数:
#define FUNC(rettype,memclass) rettype
/// @brief a function.
/// @param param a function parameter.
FUNC(void,PUBLIC_CTX) my_fun1(int* param);
/// @brief a function.
FUNC(int,PUBLIC_CTX) my_fun2(void);
当数据具有相同大小时它运行良好,但我正在使用不同大小的数据帧,它给了我这个错误:def wilcoxon_test(df1,df2):
list_col_1 = df1.columns
list_col_2 = df2.columns
for i in range(0,len(list_col_1)):
name = list_col_1[i]
for j in range(0,len(list_col_2)):
name_check = list_col_2[j]
if name_check == name:
stat,pvalue = stats.wilcoxon(df1[name],df2[name_check])
print("Wilcoxon test of {} and {}: stat = {},pvalue = {}".format(name,name_check,stat,pvalue))
if pvalue < 0.01:
print("Pvalue between {} and {} < 0.01".format(name,name_check))
return None
我在这个 post 上看到在 R 上讨论这个问题,你可以通过传递 paired: FALSE 来实现。这样做,相当于进行了 Mann-Whitney 检验。
有没有办法用 scipy.stats.wilocoxon 在 Python 上做同样的事情,还是我应该直接使用 scipy.stats.mannwhitneyu ?
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)