小编ale*_*hli的帖子

过滤和选择使用python pandas制作的数据透视表

我正在努力使用Python pandas包中的层次索引.具体来说,我不明白如何在旋转后过滤比较行中的数据.

以下是文档中的示例表:

import pandas as pd
import numpy as np

In [1027]: df = pd.DataFrame({'A' : ['one', 'one', 'two', 'three'] * 6,
                              'B' : ['A', 'B', 'C'] * 8,
                              'C' : ['foo', 'foo', 'foo', 'bar', 'bar', 'bar'] * 4,
                              'D' : np.random.randn(24),
                              'E' : np.random.randn(24)})

In [1029]: pd.pivot_table(df, values='D', rows=['A', 'B'], cols=['C'])
Out[1029]: 
    C             bar       foo
    A     B                    
    one   A -1.154627 -0.243234
          B -1.320253 -0.633158
          C  1.188862  0.377300
    three A -1.327977       NaN
          B       NaN …
Run Code Online (Sandbox Code Playgroud)

python indexing pivot pivot-table pandas

7
推荐指数
1
解决办法
3万
查看次数

使用pandas聚合所有数据帧行对组合

我使用python pandas跨数据帧执行分组和聚合,但我现在想执行特定的行成对聚合(n选择2,统计组合).这是示例数据,我想在[mygenes]中查看所有基因对:

import pandas
import itertools

mygenes=['ABC1', 'ABC2', 'ABC3', 'ABC4']

df = pandas.DataFrame({'Gene' : ['ABC1', 'ABC2', 'ABC3', 'ABC4','ABC5'],
                       'case1'   : [0,1,1,0,0],
                       'case2'   : [1,1,1,0,1],
                       'control1':[0,0,1,1,1],
                       'control2':[1,0,0,1,0] })
>>> df
   Gene  case1  case2  control1  control2
0  ABC1      0      1         0         1
1  ABC2      1      1         0         0
2  ABC3      1      1         1         0
3  ABC4      0      0         1         1
4  ABC5      0      1         1         0
Run Code Online (Sandbox Code Playgroud)

最终产品应如下所示(默认情况下应用np.sum很好):

                 case1    case2    control1    control2
'ABC1', 'ABC2'    1         2         0            1
'ABC1', 'ABC3'    1         2         1 …
Run Code Online (Sandbox Code Playgroud)

python combinations aggregate python-itertools pandas

6
推荐指数
2
解决办法
5772
查看次数

使用Python来操作键值分组的txt文件表示

我试图使用Python来操作格式A中的文本文件:

Key1  
Key1value1  
Key1value2  
Key1value3  
Key2  
Key2value1  
Key2value2  
Key2value3  
Key3... 
Run Code Online (Sandbox Code Playgroud)

进入格式B:

Key1 Key1value1  
Key1 Key1value2  
Key1 Key1value3  
Key2 Key2value1  
Key2 Key2value2  
Key2 Key2value3  
Key3 Key3value1...
Run Code Online (Sandbox Code Playgroud)

具体来说,这里简要介绍一下文件本身(只显示一个密钥,完整文件中还有数千个密钥):

chr22:16287243: PASS  
patientID1  G/G  
patientID2  G/G  
patient ID3 G/G
Run Code Online (Sandbox Code Playgroud)

这里有所需的输出:

chr22:16287243: PASS  patientID1    G/G  
chr22:16287243: PASS  patientID2    G/G  
chr22:16287243: PASS  patientID3    G/G
Run Code Online (Sandbox Code Playgroud)

我编写了以下可以检测/显示密钥的代码,但是我在编写代码时难以存储与每个密钥关联的值,并随后打印这些键值对.任何人都可以帮我完成这项任务吗?

import sys
import re

records=[]

with open('filepath', 'r') as infile:
    for line in infile:
        variant = re.search("\Achr\d",line, re.I) # all variants start with "chr"
        if variant:
            records.append(line.replace("\n",""))
            #parse lines until a …
Run Code Online (Sandbox Code Playgroud)

python key-value text-files

1
推荐指数
1
解决办法
398
查看次数

初学者python列表补充,查找索引

我有以下代码,我想要所有1的索引位置:

mylist = ['0', '0', '1', '1', '0']

for item in mylist:
    if item is '1':
        print mylist.index(item)
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么这个程序的输出是2,2而不是2,3?

谢谢

python indexing list

-1
推荐指数
1
解决办法
156
查看次数