首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将多维numpy数组分成数个一维数组的变量为函数scipy函数参数

将多维numpy数组分成数个一维数组的变量为函数scipy函数参数
EN

Stack Overflow用户
提问于 2020-05-29 04:25:12
回答 1查看 36关注 0票数 1

我正在研究一个大型基因阵列,其中单个基因由多个探针表示,从2个到20个探针。我基本上想做一个kruskal-wallace测试(非参数方差分析),以确定单个基因上的探针是否提供了本质上相同的信息。所以我写了下面的代码,让基因是一个(1xm)数组,其中m是探针的数量。设X是(n×m)个数组)。

代码语言:javascript
复制
ugenes=np.unique(genes)
for i in range(genes.size):
    gene=ugenes[i]
    idx=np.where(genes==gene)[0]
    % the length of idx is variable and can be anywhere from 2 to twenty so Xd is of
    % variable size
    Xd=X[:,idx]
    [h,p]=kruskal(Xd)

我遇到的问题是kruskal只接受一维数组和多个数组作为参数。由于Xd是可变的,我不知道我必须将它分解成多少个单独的数组,并且独特基因的数量约为20000,所以手动操作是不可行的。有没有办法分解Xd,这样它就可以发送到kruskal,作为

代码语言:javascript
复制
kruskal(Xd[:,0],Xd[:,1],...Xd[:,z])

(其中z是Xd的总列数),而不计算Xd的列数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-29 05:20:30

您可以尝试将列转换为list并将其传递给kruskal:

代码语言:javascript
复制
Xd=list(X[:,idx].T)
[h,p]=kruskal(*Xd)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62073888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档