小编Tim*_*and的帖子

如何处理两个床文件以并行查找重叠区域?

我想处理多个床文件以查找重叠区域。我将我的数据集读取为数据帧,以及如何有效地并行扫描两个数据集以检测重叠区域发生的位置。我的方法是每次将数据框对象的每个单元格的峰值区域作为查询时,将间隔树中另一个数据框的所有行的峰值区域作为查询,然后搜索重叠区域。我很困惑如何在 R 中实现这一点。请帮助处理生物信息学中的床格式文件。感谢有人指出我如何做到这一点......

这是我想要实现的简单示例:

  [1]     chr1 [10171, 10226]      * | MACS_peak_1      7.12
  [2]     chr1 [32698, 33079]      * | MACS_peak_2     13.92
  [3]     chr1 [34757, 34794]      * | MACS_peak_3      6.08
  [4]     chr1 [37786, 37833]      * | MACS_peak_4      2.44
  [5]     chr1 [38449, 38484]      * | MACS_peak_5      3.61
  [6]     chr1 [38584, 38838]      * | MACS_peak_6      4.12
  ..
  ..
  []     chrX [155191467, 155191508]      * | MACS_peak_77948      3.80
  []     chrX [155192786, 155192821]      * | MACS_peak_77949      3.71
  []     chrX [155206352, 155206433]      * | MACS_peak_77950      3.81
  []     chrX …
Run Code Online (Sandbox Code Playgroud)

parallel-processing r bioinformatics bed

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

索引名称“index_name”太长;限制为 63 个字符

当我运行 Rails 迁移命令时。我发现索引名称太长。我的迁移文件

class AddMissingIndices < ActiveRecord::Migration
  def change
    # We'll explicitly specify its name, as the auto-generated name is too long and exceeds 63
    # characters limitation.
    add_index :mailboxer_conversation_opt_outs, [:unsubscriber_id, :unsubscriber_type],
      name: 'index_mailboxer_conversation_opt_outs_on_unsubscriber_id_type'
    add_index :mailboxer_conversation_opt_outs, :conversation_id

    add_index :mailboxer_notifications, :type
    add_index :mailboxer_notifications, [:sender_id, :sender_type]

    # We'll explicitly specify its name, as the auto-generated name is too long and exceeds 63
    # characters limitation.
    add_index :mailboxer_notifications, [:notified_object_id, :notified_object_type],
      name: 'index_mailboxer_notifications_on_notified_object_id_and_type'

    add_index :mailboxer_receipts, [:receiver_id, :receiver_type]
  end
end
Run Code Online (Sandbox Code Playgroud)

服务器日志是

铁轨已中止!

StandardError:发生错误,此迁移和所有后续迁移均已取消:

表“mailboxer_conversation_opt_outs”上的索引名称“index_mailboxer_conversation_opt_outs_on_unsubscriber_type_and_unsubscriber_id”太长;限制为 63 …

migration postgresql indexing ruby-on-rails ruby-on-rails-4

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

在 Pandas 中将元组设置为列名

我正在尝试将 pandas 列名称设置为元组。注意:列名已经是一个元组,我正尝试用另一个元组替换它。 在这里输入图像描述 我尝试了这个tab.rename(columns = {valeur[0] : cle}, inplace = True ) “cle”是我的新元组(6, 9),“valeur[0]”是列名称(7.25, 7.35)。

我收到错误:“对于 MultiIndex,名称应该类似于列表”

python tuples dataframe pandas

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

为什么 Perl 在布尔上下文中将具有单个 undef 值的数组评估为 true?

为什么这段代码不打印“2”?

#!/usr/bin/perl

sub get_undef() {
        return undef;
}

my $test1 = get_undef;
my @test2 = get_undef;

print "1\n" unless ($test1);
print "2\n" unless (@test2);
Run Code Online (Sandbox Code Playgroud)

arrays perl if-statement undefined

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

来自散列的特定键值

我只对“DelayedAutoStart”键的值感兴趣,并希望此代码能够工作,但它会打印更多信息。有人能告诉我这里有什么问题吗?

   use Win32::Registry;
   use Data::Dumper;
   $p = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion";
   $p = "SYSTEM\\CurrentControlSet\\Services\\sppsvc";
   $main::HKEY_LOCAL_MACHINE->Open($p, $CurrVer) || 
    die "Open: $!";
   $CurrVer->GetValues(\%vals); 
   #print Dumper(\%vals);

   foreach $k (keys %vals) {
   $key = $vals{$k};
   if ($$key[0] == "DelayedAutoStart")
   {
   print "$$key[0] = $$key[2]\n"; 
   }
}
Run Code Online (Sandbox Code Playgroud)

结果:

ServiceSidType = 1
ErrorControl = 1
LaunchProtected = 1
DisplayName = @%SystemRoot%\system32\sppsvc.exe,-101
Start = 2
ImagePath = %SystemRoot%\system32\sppsvc.exe
Description = @%SystemRoot%\system32\sppsvc.exe,-100
DelayedAutoStart = 1
ObjectName = NT AUTHORITY\NetworkService
RequiredPrivileges = SeAuditPrivilege SeChangeNotifyPrivilege         
SeCreateGlobalPrivilege SeImpersonatePrivilege
FailureActions = ÇQ?         ?   ¶ …
Run Code Online (Sandbox Code Playgroud)

perl hash

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

如何使用awk进行多次匹配并在每个模式后打印不同数量的行

我有一个包含数千行的大文件,如下所示:

>ENST00001234.1
ACGTACGTACGG
TTACCCAGTACG
ATCGCATTCAGC
>ENST00002235.4
TTACGCAT
TAGGCCAG
>ENST00005546.9
TTTATCGC
TTAGGGTAT
Run Code Online (Sandbox Code Playgroud)

>例如,我想 grep 特定的 id(在符号之后),ENST00001234.1然后想在匹配之后获取行直到下一个>[不管行数]。我想以这种方式一次 grep 大约 63 个 ID。

如果我 grepENST00001234.1ENST00005546.9ids,理想的输出应该是:

>ENST00001234.1
ACGTACGTACGG
TTACCCAGTACG
ATCGCATTCAGC
>ENST00005546.9
TTTATCGC
TTAGGGTAT
Run Code Online (Sandbox Code Playgroud)

我试过了,awk '/ENST00001234.1/ENST00005546.9/{print}'但没有帮助。

bash awk grep bioinformatics fasta

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

join 和 cat 中的重定向

我想知道如何在此站点https://shapeshed.com/unix-join/ 的示例中使用重定向

这是输入

$ cat wine.txt
White Reisling Germany
Red Riocha Spain
Red Beaunes France

$ cat reviews.txt
Riocha Meh
Beaunes Great!
Reisling Terrible!
Run Code Online (Sandbox Code Playgroud)

这是命令和结果

$ join -1 2 -2 1 <(sort -k 2 wine.txt) <(sort reviews.txt)
Beaunes Red France Great!
Reisling White Germany Terrible!
Riocha Red Spain Meh
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,双重使用 < 不起作用

$ cat file 1
Hello
$ cat file 2
World
Run Code Online (Sandbox Code Playgroud)

我预计

$ cat <file1 <file2    
Hello World
Run Code Online (Sandbox Code Playgroud)

但结果是

World
Run Code Online (Sandbox Code Playgroud)

你们有什么想法吗?

bash redirect process-substitution

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

dict.values() 未按预期返回列表

我正在尝试从我的字典中获取值

for elem in set(sample_txt):

       d = {elem:sample_txt.count(elem)}

print(d.values())
Run Code Online (Sandbox Code Playgroud)

d.values() 应返回值列表:

方法决定。key() 和 dict.keys() 。value() 显式返回键或值的列表。还有一个 items() 返回(键,值)元组列表,这是检查字典中所有键值数据的最有效方法。 来自developers.google.com

所以我应该得到类似的东西['a', 'b', 'etc']。然而在我的例子中我得到:

type(d.values())---> <class 'dict_values'>

怎么了?

python dictionary list

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

将数据帧列名称从驼峰式命名法转换为蛇形命名法

我想更改 Pandas DataFrame 的列标签

['evaluationId' , 'createdAt', 'scheduleEndDate', 'sharedTo', ...]
Run Code Online (Sandbox Code Playgroud)

['EVALUATION_ID', 'CREATED_AT', 'SCHEDULE_END_DATE', 'SHARED_TO',...]
Run Code Online (Sandbox Code Playgroud)

我有很多具有此模式“aaaBb”的列,我想创建重命名列的此模式“AAA_BB”

我尝试过类似的东西:

new_columns = [unidecode(x).upper() for x in df.columns]
Run Code Online (Sandbox Code Playgroud)

但我不知道如何创建解决方案。

python camelcasing dataframe pandas snakecasing

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

使用 awk 或 sed 替换 fasta 标头中的单个字符

我正在 bash 中使用一个 fasta 文件,该文件的标题以“>”开头,以“C”或“+”结尾。就像这样:

>chr1:35031657-35037706+
GGTGGACTAGCCAGTGAATGTCAACGCGTCCCTA
CCTAAGGCGATATCCGCAGCCGCCCGCGTCCCTA
>chr1:71979382-71985425C
agattaaatgaactattacacataaagtgcttac
ttacacataaagtgcttacgaactattacaggga
Run Code Online (Sandbox Code Playgroud)

我想使用 awk (gsub?) 或 sed 将标题的最后一个字符更改为“+”(如果它是“C”)。基本上我希望所有序列都以“+”结尾。没有C。

期望的输出:

>chr1:35031657-35037706+
GGTGGACTAGCCAGTGAATGTCAACGCGTCCCTA
CCTAAGGCGATATCCGCAGCCGCCCGCGTCCCTA
>chr1:71979382-71985425+
agattaaatgaactattacacataaagtgcttac
ttacacataaagtgcttacgaactattacaggga
Run Code Online (Sandbox Code Playgroud)

序列不需要改变任何东西。我认为这非常简单,但我自己很难使用其他帖子来做到这一点。我知道这awk '/^>/ && /C$/{print $0}'将打印以“>”开头并以“C”结尾的标题,但我不确定如何用“+”替换所有这些“C”。

感谢您的帮助!

bash awk sed bioinformatics fasta

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