小编fug*_*ugu的帖子

转换复杂的数据框架

我有一个数据框,其第一列(weights)包含一个列表(数据帧?):

> head(data$weights)

> data <- structure(list(A373R11 = structure(list(Signature.1A = 0, Signature.1B = 0, 
    Signature.2 = 0, Signature.3 = 0.151631702143023, Signature.4 = 0.149799882118262, 
    Signature.5 = 0, Signature.6 = 0, Signature.7 = 0.0634912587993959, 
    Signature.8 = 0, Signature.9 = 0.173189155080817, Signature.10 = 0, 
    Signature.11 = 0, Signature.12 = 0, Signature.13 = 0, Signature.14 = 0, 
    Signature.15 = 0, Signature.16 = 0, Signature.17 = 0, Signature.18 = 0, 
    Signature.19 = 0, Signature.20 = 0, Signature.21 = 0.0905517653558877, 
    Signature.R1 = 0, Signature.R2 …
Run Code Online (Sandbox Code Playgroud)

r dataframe

6
推荐指数
3
解决办法
142
查看次数

在Express中将新的select2选项标签写入本地数据库

我在Express应用程序中使用select2创建一个输入框,用户可以在其中从列表中选择主题,并可以使用任何新添加的选项来更新此列表

我正在努力的事情是select2在客户端运行,而我用来为<option>标签添加种子(我想向其添加新选项)的任何数据都是服务器端。

我希望用户能够添加原始列表中不存在的主题,以便将来的用户可以看到新添加的选项(以及原始选项)

这些是我考虑过的实现这些目标的选项(以不断增加的需求):

  • <option>Subject</option>为每个添加的标签添加新的html标签
  • 将新标签推送到数组,然后<option>从该数组播种s
  • <option>json对象播种,并在创建标记时更新此对象
  • 种子<option>从外部数据库(例如猫鼬),并更新该标签上创建

据我所知,所有这些选项都要求我的客户端代码(select2-js)与服务器端代码(我的数组,.json文件或mongoose架构所在的位置)进行对话,而且我不知道如何执行此操作

在我当前的方法中,我试图jsonselect2调用中指定一个“本地” 文件作为我的数据源(请参阅此处)。但是,这不会为数据库提供任何选项,因此无法正常工作。

然后,我检查每个新标签是否存在于数组(dataBase)中,如果不存在,则将其添加到数据库中:

// Data to seed initial tags:
var dataBase = [
    { id: 0, text: 'Maths'},
    { id: 1, text: 'English'},
    { id: 2, text: 'Biology'},
    { id: 3, text: 'Chemistry'},
    { id: 4, text: 'Geography'} …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery express jquery-select2

6
推荐指数
3
解决办法
375
查看次数

计算文本文件中匹配的术语数量?

我试图计算输入列表中匹配项的数量,该列表包含每行一个术语和一个数据文件,并创建一个包含匹配(grep'd)项和匹配数的输出文件.

input_list.txt如下所示:

+ 5S_rRNA
+ 7SK
+ AADAC
+ AC000111.3
+ AC000111.6
Run Code Online (Sandbox Code Playgroud)

data.txt文件:

chr10   101780038   101780209   5S_rRNA
chr10   103578280   103578430   5S_rRNA
chr10   112327234   112327297   5S_rRNA
chr10   120766459   120766601   7SK
chr10   127408228   127408317   7SK
chr10   127511874   127512063   AADAC
chr10   14614140    14614294    AC000111.3
chr10   14695964    14696146    AC000111.6
Run Code Online (Sandbox Code Playgroud)

我想创建一个输出文件(output.txt),其中包含匹配的术语及其相应的计数.

+ 5S_rRNA   3
+ 7SK   2
+ AADAC 1
+ AC000111.3    1
+ AC000111.6    1
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经使用以下脚本生成了包含所有匹配术语的列表,但是所有提供匹配术语计数的尝试都没有奏效.

    exec < input_list.txt
    while read line
    do
                grep -w data.txt | awk '{print $0}'| sort| uniq  >> grep_output.txt …
Run Code Online (Sandbox Code Playgroud)

unix perl grep match

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

空哈希声明

我从来不知道以下之间的区别,如果有的话:

my %hash;
my %hash = ();
Run Code Online (Sandbox Code Playgroud)

谁能对此有所了解?

variables perl variable-declaration

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

将img移动到断点上的另一个bootstrap col

使用Bootstrap 4,我有一个<container>有两列.

在屏幕尺寸属于boostrap 4断点 md-xl的范围内,它们排列在两个大小相等的列中:col-md-6并且在sm-xs屏幕上堆叠成一列:col-xs-12.

我想在md屏幕上移动红色img上方的蓝色img(所以从一个col到另一个 - 见下图).我曾经玩过一些javascript和Node.insertBefore(),但如果可能的话,我更喜欢使用Bootsrap4 CSS.

在此输入图像描述

下面是我用一些补救javascript做的第一次尝试 - 有人能指出我正确的方向吗?

function movelogo() {
    var logo = document.getElementById('logo');
    logo.insertBefore(logo, 'next_col');
}


window.addEventListener('resize', movelogo);
Run Code Online (Sandbox Code Playgroud)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1 viewport-fit=cover">
    <meta http-equiv="content-type" content="text/html"/>
    <title>Title</title>

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"
          integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">

    <!-- Font Awesome CSS -->
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" …
Run Code Online (Sandbox Code Playgroud)

html javascript css function twitter-bootstrap

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

Ajax GET:多个特定于数据的调用,还是更少的非特定调用?

我正在使用Node.js/express后端和MongoDB数据库开发 Web 应用程序。

以下示例适用于管理仪表板页面,我将在其中显示包含与站点上用户相关的不同信息的卡片。我可能想在示例页面上显示 - 例如:

  1. 各类用户数
  2. 每种用户类型最常见的位置
  3. 每月有多少注册
  4. 最受欢迎的职位

我可以在一条路线中完成这一切,在那里我有一个控制器来执行所有这些任务,并将它们作为一个对象捆绑到一个 url 中,然后我可以使用ajax. 或者,我可以将每个任务拆分为自己的路由/控制器,并对每个任务进行单独的 ajax 调用。我要决定的是在单个页面上进行多个 ajax 调用的最佳实践什么


例子:

我正在建立一个页面,我将在其中使用DataTables为不同类型的用户制作一个交互式表格(目前有两个:mentorsmentees)。这个例子只需要两个数据请求(每个用户类型一个),但我的最后一页将更像是 10。

对于每种用户类型,我正在为每种用户类型进行 ajax get 调用,并根据返回的数据构建表:

用户类型 1 - 学员

$.get('/admin/' + id + '/mentees')
    .done(data => {
        $('#menteeTable').DataTable( {
            data: data,
            "columns": [
                { "data": "username"},
                { "data": "status"}
            ]
        });
    })
Run Code Online (Sandbox Code Playgroud)

用户类型 2 - 导师

$.get('/admin/' + id + '/mentors')
    .done(data …
Run Code Online (Sandbox Code Playgroud)

javascript ajax node.js

5
推荐指数
0
解决办法
405
查看次数

打印perl中数组哈希的值

我有一个声明如下的数组哈希:

my %hash;
push @{ $hash{ $value1[$_] } }, [ $value1[$_], $value2[$_], $value3[$_], $value4[$_], $value5[$_] ] for 0 .. $#value1;
Run Code Online (Sandbox Code Playgroud)

我希望能够使用以下方法检查每个键的值:

open KEYS, '>keys.txt' or die "Can't write to 'keys.txt'\n";

for my $key ( sort keys %hash ) {
    print KEYS "Key: $key contains the values: ";
    for my $value ( @{$hash{$value1}} ) {
        print KEYS "$value ";
    }   
    print KEYS "\n";
}
close(KEYS);
Run Code Online (Sandbox Code Playgroud)

虽然我可以使用Data :: Dumper可视化键和关联值,但上面代码的输出为每个键提供了内存位置,而不是值.例如:

Key: 'Value1' contains the values: ARRAY(0x7fcd8645ba68) 
Run Code Online (Sandbox Code Playgroud)

即使我将相同数量的值推送到每个数组上,每个键包含不同数量的值

我这样做的方式有问题吗?

arrays perl hash key

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

计算数百GB数据的子序列

我正在尝试处理一个非常大的文件,并计算文件中某个长度的所有序列的频率.

为了说明我在做什么,请考虑一个包含序列的小输入文件 abcdefabcgbacbdebdbbcaebfebfebfeb

下面,代码读取整个文件,并获取长度为n的第一个子字符串(低于我将其设置为5,尽管我希望能够更改它)并计算其频率:

abcde => 1
Run Code Online (Sandbox Code Playgroud)

下一行,它向右移动一个字符,并执行相同的操作:

bcdef => 1
Run Code Online (Sandbox Code Playgroud)

然后它继续执行其余的字符串并打印5个最常见的序列:

open my $in, '<', 'in.txt' or die $!; # 'abcdefabcgbacbdebdbbcaebfebfebfeb'

my $seq = <$in>; # read whole file into string
my $len = length($seq);

my $seq_length = 5; # set k-mer length
my %data;

for (my $i = 0; $i <= $len - $seq_length; $i++) {
     my $kmer = substr($seq, $i, $seq_length);
     $data{$kmer}++;
}

# print the hash, showing only the 5 most frequent k-mers
my $count = …
Run Code Online (Sandbox Code Playgroud)

memory perl substring large-files

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

Uncaught TypeError: Cannot read property 'replace' of null in select2

I am using select2 in a node express app, and when I supply an array as data source data: dataBase I get the error Uncaught TypeError: Cannot read property 'replace' of null.

I have tried using an ajax source as data, which works but the data are not filtered on typing (this is commented out below) - it appears that matching only works with array data:

matcher only works with locally supplied data (e.g., via an array! When …

javascript ajax jquery-select2

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

旋转表头

我试图-60°通过向rotated-text每个标题添加一个类来旋转引导程序 4 表中的标题:

<table class="table table-hover">
    <thead class="text-left">
        <th class="rotated-text" scope="col">Col 1 header</th>
    </thead>

    [...]
Run Code Online (Sandbox Code Playgroud)

.rotated-text {
    -webkit-transform: rotate(-60deg);
    -ms-transform: rotate(-60deg);
    transform: rotate(-60deg);
    font-size: larger;
}
Run Code Online (Sandbox Code Playgroud)

但是,这会导致标题被换行,并且文本并未真正与标题/行边框左对齐(请参见下面的代码段)。我怎样才能解决这个问题?

<table class="table table-hover">
    <thead class="text-left">
        <th class="rotated-text" scope="col">Col 1 header</th>
    </thead>

    [...]
Run Code Online (Sandbox Code Playgroud)
.rotated-text {
    -webkit-transform: rotate(-60deg);
    -ms-transform: rotate(-60deg);
    transform: rotate(-60deg);
    font-size: larger;
}
Run Code Online (Sandbox Code Playgroud)

html css twitter-bootstrap

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