小编Xia*_*gwu的帖子

R,生成数向量只包含0和1,具有一定的长度

我想创建一个像这样的列表/向量:

c(0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1)
Run Code Online (Sandbox Code Playgroud)

要么

c(0,0,1,0,1,0,1,1,1,1,0,1,0,1,1,0,1)
Run Code Online (Sandbox Code Playgroud)

该向量的长度是变量"X",0和1的位置是完全随机的.

r

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

Python,并行处理大型文本文件

采样数据文件(SAM文件)中的记录:

M01383  0  chr4  66439384  255  31M  *  0  0  AAGAGGA GFAFHGD  MD:Z:31 NM:i:0
M01382  0  chr1  241995435  255 31M  *  0  0  ATCCAAG AFHTTAG  MD:Z:31 NM:i:0
......
Run Code Online (Sandbox Code Playgroud)
  • 数据文件是逐行的
  • 数据文件的大小从1G​​-5G不等。

我需要逐行浏览数据文件中的记录,从每一行获取一个特定值(例如,第四值,66439384),然后将此值传递给另一个函数进行处理。然后将更新一些结果计数器。

基本的工作流程是这样的:

# global variable, counters will be updated in search function according to the value passed. 
counter_a = 0    
counter_b = 0
counter_c = 0

open textfile:
    for line in textfile:
        value = line.split()[3]
        search_function(value)    # this function takes abit long time to process

def search_function (value):
    some conditions …
Run Code Online (Sandbox Code Playgroud)

python parallel-processing

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

在R中以3-2布局绘制5个图形

-----   -----   -----
| A |   | B |   | C |
-----   -----   ----
    -----   -----
    | D |   | E |
    -----   -----
Run Code Online (Sandbox Code Playgroud)

要么

    -----   -----  
    | A |   | B |   
    -----   -----  
-----   -----   -----
| C |   | D |   | E |
-----   -----   -----
Run Code Online (Sandbox Code Playgroud)

我有5张图,我想把它放到1个图中,结构如上.从这篇文章中得到了一些评价: 在R中以2-1布局绘制3个图形,以使用layout()函数,但是无法使其正确.

有人可以帮忙吗?非常感谢.

更新


修好结构后,附上我的情节.非常感谢你的帮助. 我的情节

plot r

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

python字典,使每个奇数行键到键,偶数行从文件的行到值

嗨,我有一个像这样的文本文件:

>NM_145914.2:212
TCTGATGGTAAAAGTCGAGGAGAAAGAAGA
>NM_000614.3:1086
ATTCAATTTAAAATCAGACTCTTTAGTTGA
>NM_012096.2:2808
CAGTTAAGGTTTCAAATTGTGGCAGGTGGT
>NM_173465.3:1682
GTGCGTCGGGTGAGAGAGGCCCCAGCGGCC
>NM_001198858.1:490
CAACCACCACAACCTGCTGGTCTGCTCGGT
......more lines in same style......
Run Code Online (Sandbox Code Playgroud)

我想要的是:

从上面的文件中读取,将行1,3,5,7 ...转换为字典键,将行2,4,5,8 ...转换为字典值.

我的代码是:

query_dict = {}
nameAt = 1
sequenceAt = 2

while name in range(totalLines):
line1 = linecache.getline(filename, nameAt)
line2 = linecache.getline(filename, sequenceAt)

query_dict[line1] = line2
nameAt  = nameAt + 2        
sequenceAt = sequenceAt + 2
Run Code Online (Sandbox Code Playgroud)

代码工作,但它非常慢,因为我的文本文件的最小行是200,000行.有没有人有更好的方法来做到这一点?

非常感谢.

==============添加了后续问题==================

这里是fastq格式,每次读取4行(记录):

@>NM_052972.2:11:1054:1780:889
CTTCGACATCTCCGGCAACCCCTGGATCTG
+>NM_052972.2:11:1054:1780:889
IIIIIIIIIIIIIIIIIIIIIIIIIIIIII
@>NM_080660.3:12:914:1802:542
CCTGTATGGCTACTGCAACCTCAAGGATAA
+>NM_080660.3:12:914:1802:542
IIIIIIIIIIIIIIIIIIIIIIIIIIIIII
@>NM_176814.3:712:2706:4242:98
ACAGAGTAAAAGAGAGGCTGACTTAATAAA
+>NM_176814.3:712:2706:4242:98
IIIIIIIIIIIIIIIIIIIIIIIIIIIIII
...... more lines in same style ......
Run Code Online (Sandbox Code Playgroud)

我想创建一个字典,键是第1行,值是每4行记录中的第2行.

字典看起来像: …

python dictionary fasta fastq

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

标签 统计

python ×2

r ×2

dictionary ×1

fasta ×1

fastq ×1

parallel-processing ×1

plot ×1