小编Lea*_*ero的帖子

python中的成员资格测试比set()更快

我必须在包含10-100k这些元素的列表中检查数百万个元素(20-30个字母str)的存在.在python中有更快的方法set()吗?

import sys
#load ids
ids = set( x.strip() for x in open(idfile) )

for line in sys.stdin:
    id=line.strip()
    if id in ids:
        #print fastq
        print id
        #update ids
        ids.remove( id )
Run Code Online (Sandbox Code Playgroud)

python performance set fastq

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

致命错误:在C:\ xampp\htdocs中调用未定义的函数sqlsrv_connect()

我在用

  • Xampp版本3.2.1,PHP版本5.6.8.
  • Microsoft Azure SQL服务器

目标

我正在尝试创建一个将访问我的数据库的Web应用程序,并能够SELECT,INSERT,UPDATEDELETE记录.


问题

我无法连接到数据库服务器


错误

致命错误:在第25行的C:\ xampp\htdocs\BLT\Employee_Database .php中调用未定义的函数sqlsrv_connect()


<html>
<head>
    <Title>Employee Database</Title>
</head>
<body>
<form method="post" action="?action=add" enctype="multipart/form-data">
    Last name <input type="text" name="LastName" id="LastName"/></br>
    First name <input type="text" name="FirstName" id="FirstNamne"/></br>
    E-mail address <input type="text" name="Email" id="Email"/></br>
    User Id <input type="text" name="UserId" id="UserId"/></br>
    Password <input type="password" name="Password" id="Password"/></br>
    <input type="submit" name="submit" value="Submit"/>
</form>

<?php
$serverName = "jy4nij6vuy.database.windows.net,1433";
$connectionOptions = array("Database" => "robertfarb",
    "UID" => "robertFarb",
    "PWD" => …
Run Code Online (Sandbox Code Playgroud)

php sql sql-server xampp azure-sql-database

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

如何在bash脚本中使用并行编程/多线程?

这是我的脚本:

#!/bin/bash
#script to loop through directories to merge fastq files
sourcedir=/path/to/source
destdir=/path/to/dest

for f in $sourcedir/*
do
    fbase=$(basename "$f")
    echo "Inside $fbase"
    zcat $f/*R1*.fastq.gz | gzip > $destdir/"$fbase"_R1.fastq.gz
    zcat $f/*R2*.fastq.gz | gzip > $destdir/"$fbase"_R2.fastq.gz
done
Run Code Online (Sandbox Code Playgroud)

这里目录'source'中有大约30个子目录.每个子目录都有一些R1 .fastq.gz文件和R2 .fastq.gz,我想将它们合并到一个R1.fastq.gz和R2.fastq.gz文件中,然后将合并后的文件保存到目标目录.我的代码工作正常,但由于数据量的原因,我需要加快速度.我只想知道有什么办法可以在我的脚本中实现多线程编程吗?如何运行我的脚本以便多个作业并行运行?bash脚本新手,所以任何帮助将不胜感激.

parallel-processing bash multithreading fastq

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

bash:/ bin/ls:参数列表太长了

我需要列出大量文件(40,000个文件),如下所示:

ERR001268_1_100.fastq  ERR001268_2_156.fastq  ERR001753_2_78.fastq
ERR001268_1_101.fastq  ERR001268_2_157.fastq  ERR001753_2_79.fastq
ERR001268_1_102.fastq  ERR001268_2_158.fastq  ERR001753_2_7.fastq
ERR001268_1_103.fastq  ERR001268_2_159.fastq  ERR001753_2_80.fastq
Run Code Online (Sandbox Code Playgroud)

我的命令是:ls ERR*_1_*.fastq |sed 's/\.fastq//g'|sort -n > masterlist 但是错误是:bash: /bin/ls: Argument list too long

但是我可以解决这个问题吗?有没有其他方法可以通过perl/python制作这样的列表?

谢谢

ls list fastq

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

读取unix和run命令中的文件列表

我是shell脚本的新手,我一整天都在努力弄清楚如何执行"for"命令.基本上,我想要做的是以下内容:

我有一个list.txt文件,其中包含一堆名称:

name1
name2
name3
Run Code Online (Sandbox Code Playgroud)

对于列表中的每个名称,有两个不同的文件,每个文件的名称结尾不同.例如:

name1_R1
name1_R2
Run Code Online (Sandbox Code Playgroud)

我试图运行的程序被调用sickle.基本上,它需要两个文件(彼此对应)并对它们进行分析,因此需要我有这个命名方案.镰刀命令如下:

sickle pe -f input_file1.fastq -r input_file2.fastq -t sanger \
Run Code Online (Sandbox Code Playgroud)

如果有人可以帮助我,至少只是告诉我如何让unix读取文件列表并独立处理每一行,我想我可以从那里开始.我尝试了一些东西,但没有一个能奏效.

unix bash loops list fastq

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

如何让我的Python脚本更快?

我是Python的新手,我编写了一个(可能非常难看)脚本,它应该从fastq文件中随机选择一个序列子集.fastq文件以每行四行的块存储信息.每个块中的第一行以字符"@"开头.我用作输入文件的fastq文件是36 GB,包含大约14,000,000行.

我试图重写一个使用过多内存的现有脚本,并设法减少了很多内存使用量.但脚本需要永远运行,我不明白为什么.

parser = argparse.ArgumentParser()
parser.add_argument("infile", type = str, help = "The name of the fastq input file.", default = sys.stdin)
parser.add_argument("outputfile", type = str, help = "Name of the output file.")
parser.add_argument("-n", help="Number of sequences to sample", default=1)
args = parser.parse_args()


def sample():
    linesamples = []
    infile = open(args.infile, 'r')
    outputfile = open(args.outputfile, 'w')
    # count the number of fastq "chunks" in the input file:
    seqs = subprocess.check_output(["grep", "-c", "@", str(args.infile)])
    # randomly select n fastq "chunks":
    seqsamples …
Run Code Online (Sandbox Code Playgroud)

python performance bioinformatics fastq

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

powershell 修剪 - 删除字符串后的所有字符

在字符串 (\test.something) 之后删除所有内容的命令是什么。我在文本文件中有信息,但是在字符串之后有 1000 行我不想要的文本。如何删除包括字符串在内的所有内容。

这就是我所拥有的 - 不工作。非常感谢。

$file = get-item "C:\Temp\test.txt"

(Get-Content $file) | ForEach {$_.TrimEnd("\test.something\")} | Set-Content $file
Run Code Online (Sandbox Code Playgroud)

powershell trim

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

从名称取自另一个变量的变量中获取内容

我正在做一些shell脚本.

我使用这种结构来创建新变量:

eval ${ARG}_ext=fastq
Run Code Online (Sandbox Code Playgroud)

哪个工作得很好,因为我可以直接使用这些新创建的变量:

$file_ext
Run Code Online (Sandbox Code Playgroud)

现在我想为名为extension的变量赋值:

extension=
Run Code Online (Sandbox Code Playgroud)

指定的值应该是变量$ {ARG} _ext中的值.拜托,我该怎么做?

我试过了

extension=eval ${ARG}_ext;
Run Code Online (Sandbox Code Playgroud)

但这给了我变量的名称,我想要它的价值.谢谢.

variables bash eval fastq

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

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
查看次数

在Perl中合并具有相同文件名的文件

我目前在合并Perl中的文件时遇到了问题.有两个目录/文件夹,它们成对包含相同的名称和扩展名文件.例如,在文件夹1中,我有1.fastq,2.fastq,....,10.fastq文件.在文件夹2中,我有完全相同的文件名1.fastq,2.fastq,....,10.fastq,但它们包含不同的信息.我想合并具有相同名称的文件,在开始时我尝试了cat命令

$ cat 1.fastq 1.fastq > 1.fastq
Run Code Online (Sandbox Code Playgroud)

但是,如果文件太多,例如1000+,我需要做1000次以上.如何使用perl命令自动完成?

先感谢您.

perl file-io fastq

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