小编Kom*_*thi的帖子

如何在DT :: datatable中使水平滚动条可见

使用R shiny&DT包,我正在创建某些表.列数根据用户输入而变化,并且不固定.我已经包含以下代码片段以包含水平滚动条,以便当列数较大时,用户可以滚动不直接可见的列.

server.R:

output$results <- DT::renderDataTable({
    DT::datatable(data = datasetInput(),
                  options = list(scrollX = TRUE,...)
                  )
  })
<code reduced for brevity>
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,水平滚动条最初不可见,但是当我点击一行并点击键盘上的右箭头时会出现.一旦表格被激发,滚动条是否有任何可见的方式,无论我有多少列,我都可以使用鼠标指针拖动滚动条?

更新:

我在下面的答案中尝试了代码,这就是我所看到的 - 没有水平滚动条.

在此输入图像描述

r scrollbar datatables horizontal-scrolling shiny

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

R shiny:将weblink添加到actionButton

我的闪亮应用程序中有一个框,其中有一个按钮,包含在闪亮的仪表板框中,如下所示:

shiny::fluidRow(
  shinydashboard::box(title = "Intro Page", "Some description...", 
      shiny::actionButton(inputId='ab1', label="Learn More", icon = icon("th"))
  )
)
Run Code Online (Sandbox Code Playgroud)

我想在按钮中包含一个weblink,这样当我点击它时,它应该在一个新标签中打开相应的网页.

我知道我可以这样做:

# this does not create a submit button though, it just creates a link.
tags$div(class = "submit",
         tags$a(href = "www.google.com", 
                "Learn More", 
                target="_blank")
)
Run Code Online (Sandbox Code Playgroud)

但是使用actionButton,有一个很好的按钮,我可以添加一个看起来更美观的图标.

在此输入图像描述

如何在有光泽的情况下添加actionButton的链接?

html r hyperlink action-button

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

将一列文本URL转换为Shiny中的活动超链接

我正在为通路浓缩程序创建用户界面.结果如下表所示.

在此输入图像描述

下面是一个片段,显示我使用DT :: renderDataTable和DT :: datatable在选项卡中输出表.spia_out()只是一个反应函数,它运行路径浓缩并产生一个数据帧.

spia_out <- reactive({
    ...get results in a dataframe...
  })

output$spiaout <- DT::renderDataTable({
      DT::datatable(spia_out(), extensions = ..., options = ...)
  })
Run Code Online (Sandbox Code Playgroud)

一切正常,路径丰富表生成并打印在相应的UI元素中.我唯一的问题是如何将URL的最后一列(KEGGLINK)转换为活动超链接?这样人们就可以点击它们而不是复制和粘贴.

为截图的大小提前道歉.我希望你能看到最后一栏KEGGLINK有URL,但它们没有活动.

r datatables hyperlink shiny dt

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

在多列上交叉数据框

我有2个数据帧:

dat:1900个隐含的9个变量

              V1        V2        V3        V4 V5      V6       V7     V8             V9
1        V_P50P50_Q3 chr12 106642383 106642395  + 18.1425 4.03e-08 0.0515  GGGGGACTCCCCC
2 V_P50RELAP65_Q5_01  chr8 142276666 142276677  - 16.6429 2.51e-07 0.2780   GGGATTTCCCAC
3          V_RELA_Q6 chr22  51020067  51020078  - 15.9395 2.71e-07 0.3350   GGGAATTTCCCC
4       V_NFKB_Q6_01 chr14  98601454  98601469  + 17.0684 3.08e-07 0.236  GGAGTGGAAATTCC
5          V_CREL_Q6 chr22  51020068  51020079  - 16.1165 3.19e-07 0.4050   AGGGAATTTCCC
Run Code Online (Sandbox Code Playgroud)

dat.markov:986个变量的1486个障碍物

            V1    V2        V3        V4 V5      V6       V7    V8               V9
1 V_NFKB_Q6_01 chr14  98601454  98601469  + 17.2212 1.33e-07 0.146 …
Run Code Online (Sandbox Code Playgroud)

intersection r

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

如何在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万
查看次数

ggplot2:如何获得facet_grid()的labeller = label_both和facet_wrap()的ncol选项的合并功能?

我正在使用ggplot2创建一个boxplot.我能够成功创建boxplot但是在ggplot2中将两个要素与facet合并时遇到问题:

>tmpdf

    value  treat FoldChange Gene Pvalue.Adj
 523.8589 Normal     -1.899    A    0.02828
 489.7638 Normal     -1.899    A    0.02828
 642.0126 Cancer     -1.899    A    0.02828
 928.8136 Cancer     -1.899    A    0.02828
 624.7892 Normal     -1.899    A    0.02828
  53.8685 Normal     -7.135    B    0.00012
 184.6473 Normal     -7.135    B    0.00012
  76.2712 Cancer     -7.135    B    0.00012
  48.0607 Cancer     -7.135    B    0.00012
 177.9528 Normal     -7.135    B    0.00012
4581.2847 Normal     -1.886    C    0.04924
7711.3411 Normal     -1.886    C    0.04924
6007.9852 Cancer     -1.886    C    0.04924
5940.9232 Cancer     -1.886    C    0.04924
4433.0949 Normal     -1.886 …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2 r-grid

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

R ggplot2:Add表示箱线图中的水平线

我使用ggplot2创建了一个boxplot:

library(ggplot2)

dat <- data.frame(study = c(rep('a',50),rep('b',50)), 
                  FPKM = c(rnorm(1:50),rnorm(1:50)))

ggplot(dat, aes(x = study, y = FPKM)) + geom_boxplot()
Run Code Online (Sandbox Code Playgroud)

箱线图将中位数显示为每个方框的水平线.

在此输入图像描述

如何在表示该组平均值的框中添加虚线?

谢谢!

r ggplot2 boxplot

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

GGplot Barplot不接受Y值?

我有一个数据帧:

>picard
count    reads
 1    20681318
 2     3206677
 3      674351
 4      319173
 5      139411
 6      117706
Run Code Online (Sandbox Code Playgroud)

如何在ggplot(barplot)上绘制log10(计数)与log10(读数)?

我试过了:

ggplot(picard) + geom_bar(aes(x=log10(count),y=log10(reads)))
Run Code Online (Sandbox Code Playgroud)

但它不接受y = log10(读取).如何绘制y值?

r bar-chart ggplot2

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

R:行以快速方式绑定非常大量的文件

我曾在这里写过一篇(类似的)帖子,我试图创建一个宽表而不是长表.我意识到最好把我的桌子放在长格式中,所以我把它作为一个不同的问题发布.我也发布了我尝试过的内容.

我正在使用以下方法R来约束~11000个文件:

# get list of ~11000 files
lfiles <- list.files(pattern = "*.tsv", full.names = TRUE)

# row-bind the files
# use rbindlist to rbind and fread to read files
# use mclapply I am assigning 32 cores to it
# add the file basename as the id to identify rows
dat <- rbindlist(mclapply(lfiles, function(X) {
data.frame(id = basename(tools::file_path_sans_ext(X)),
           fread(X))},mc.cores = 32))
Run Code Online (Sandbox Code Playgroud)

我正在使用R,因为我的下游处理如创建图等在R中.我有两个问题:

1.有没有办法让我的代码更有效/更快?我知道最后预期的行数,所以如果我预先分配数据帧会有帮助吗?

2.我应该如何保存(以什么格式)这个庞大的数据 - 如.RData或数据库或其他什么?

作为附加信息:我有三种类型的文件,我希望这样做.它们看起来像这样:

[centos@ip data]$ head C021_0011_001786_tumor_RNASeq.abundance.tsv
target_id   length  eff_length  est_counts …
Run Code Online (Sandbox Code Playgroud)

r

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

R 闪亮:如何调试已部署的应用程序?

我创建了一个 R 闪亮的应用程序,它在我的机器上完美运行。它也在 Shinyapps.io 服务器上成功部署。但是,当我尝试单击其中一个按钮来执行任务时,屏幕会变灰(挂起)。当我在本地运行我的应用程序时,完成了相同的任务。我看不到错误在哪里,因为它在我的本地机器上成功运行。有什么想法可以调试吗?

这是我的应用程序的日志:

2015-07-07T21:52:53.949714+00:00 shinyapps[50164]: 
2015-07-07T21:52:53.950026+00:00 shinyapps[50164]: 
2015-07-07T21:52:53.839040+00:00 shinyapps[50164]: The following object is masked from ‘package:stats’:
2015-07-07T21:52:53.949719+00:00 shinyapps[50164]: 
2015-07-07T21:52:53.960914+00:00 shinyapps[50164]:     isNamespaceLoaded
2015-07-07T21:52:53.949718+00:00 shinyapps[50164]: Attaching package: ‘pkgmaker’
2015-07-07T21:52:53.960916+00:00 shinyapps[50164]: 
2015-07-07T21:52:53.950023+00:00 shinyapps[50164]: The following object is masked from ‘package:S4Vectors’:
2015-07-07T21:52:54.666591+00:00 shinyapps[50164]: NMF - BioConductor layer [OK] | Shared memory capabilities [NO: bigmemory] | Cores 15/16
2015-07-07T21:52:54.666968+00:00 shinyapps[50164]:   To enable shared memory capabilities, try: install.extras('
2015-07-07T21:52:54.666971+00:00 shinyapps[50164]: NMF
2015-07-07T21:52:54.666973+00:00 shinyapps[50164]: ')
2015-07-07T21:52:54.672080+00:00 shinyapps[50164]: 
2015-07-07T21:52:54.672084+00:00 shinyapps[50164]: 
2015-07-07T21:52:54.672634+00:00 shinyapps[50164]: The following object …
Run Code Online (Sandbox Code Playgroud)

r shinydashboard

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