小编pdu*_*ois的帖子

如何在执行双聚类(行和列)后在heatmap.2上添加ColSideColors

我有以下代码:

library(gplots)
library(RColorBrewer);

setwd("~/Desktop")
mydata <- mtcars
hclustfunc <- function(x) hclust(x, method="complete")
distfunc <- function(x) dist(x,method="euclidean")

d <- distfunc(mydata)
fit <- hclustfunc(d)
clusters <- cutree(fit, h=100)
nofclust.height <-  length(unique(as.vector(clusters)));

# Colorings
hmcols <- rev(redgreen(2750))
selcol <- colorRampPalette(brewer.pal(12,"Set3"))
selcol2 <- colorRampPalette(brewer.pal(9,"Set1"))
clustcol.height = selcol2(nofclust.height);

heatmap.2(as.matrix(mydata), 
           trace='none', 
           dendrogram='both', 
           key=F,
           Colv=T, 
           scale='row',
           hclust=hclustfunc, distfun=distfunc, col=hmcols,
           symbreak=T,
           margins=c(7,10), keysize=0.1,
           lwid=c(5,0.5,3), lhei=c(0.05,0.5),
           lmat=rbind(c(5,0,4),c(3,1,2)),
           labRow=rownames(mydata),
           #ColSideColors=clustcol.height[clusters],  # This line doesn't work
           RowSideColors=clustcol.height[clusters])
Run Code Online (Sandbox Code Playgroud)

其中产生如下图: 在此输入图像描述

我想要做的是在行和列上执行聚类,并在树形图旁边显示聚类条(RowSideColors和ColSideColors).我怎样才能做到这一点?

目前我只是成功RowSideColors 而不是那个ColSideColors.

plot r cluster-analysis heatmap

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

在R中删除Inf和NaN的行

我有以下数据:

> dat
               ID     Gene   Value1   Value2
1      NM_013468   Ankrd1       Inf      Inf
2      NM_023785     Ppbp       Inf      Inf
3      NM_178666   Themis       NaN      Inf
4   NM_001161790     Mefv       Inf      Inf
5   NM_001161791     Mefv       Inf      Inf
6      NM_019453     Mefv       Inf      Inf
7      NM_008337     Ifng       Inf      Inf
8      NM_022430   Ms4a8a       Inf      Inf
9  PBANKA_090410     Rab6       NaN      Inf
10     NM_011328      Sct       Inf      Inf
11     NM_198411     Inf2  1.152414 1.445595
12     NM_177363    Tarm1       NaN      Inf
13  NM_001136068    Klrc1       NaN      Inf
14     NM_019418  Tnfsf14       Inf      Inf
15     NM_010652    Klrc1 …
Run Code Online (Sandbox Code Playgroud)

r dataframe

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

在Keras模型中,当列车和验证样本很小时如何测量过度拟合

我有以下情节:

在此输入图像描述

使用以下数量的样本创建模型:

                class1     class2
train             20         20
validate          21         13
Run Code Online (Sandbox Code Playgroud)

根据我的理解,情节显示没有过度拟合.但我认为,由于样本非常小,我不确定该模型是否足够通用.

除上述情节外,还有其他方法可以测量过度拟合吗?

这是我的完整代码:

library(keras)
library(tidyverse)


train_dir <- "data/train/"
validation_dir <- "data/validate/"



# Making model ------------------------------------------------------------


conv_base <- application_vgg16(
  weights = "imagenet",
  include_top = FALSE,
  input_shape = c(150, 150, 3)
)

# VGG16 based model -------------------------------------------------------

# Works better with regularizer
model <- keras_model_sequential() %>%
  conv_base() %>%
  layer_flatten() %>%
  layer_dense(units = 256, activation = "relu", kernel_regularizer = regularizer_l1(l = 0.01)) %>%
  layer_dense(units = 1, activation = "sigmoid")

summary(model)

length(model$trainable_weights)
freeze_weights(conv_base)
length(model$trainable_weights) …
Run Code Online (Sandbox Code Playgroud)

r machine-learning neural-network deep-learning keras

9
推荐指数
3
解决办法
669
查看次数

如何只聚集R heatmap.2中的列?

我有一个数据,我想绘制一个热图,只有列的树状图聚类.我怎样才能做到这一点?

数据只包含一行但包含多列.请注意,我确实希望列上的集群而不是将其转换为行集群.

这是我的代码,但没有用.

library(gplots)
library(RColorBrewer)
dat.all <- structure(list(Probes = structure(1L, .Label = "1419598_at", class = "factor"), 
    XXX_LV_06.ip = 0.985, XXX_SP_06.ip = 0.932, XXX_LN_06.id = 2.115, 
    XXX_LV_06.id = 1.753, XXX_SP_06.id = 2.668, ZZZ_KD_06.ip = 10.079, 
    ZZZ_LG_06.ip = 2.323, ZZZ_LV_06.ip = 2.119, ZZZ_SP_06.ip = 4.157, 
    ZZZ_LN_06.id = 1.371, ZZZ_LV_06.id = 1.825, ZZZ_SP_06.id = 1.457, 
    ZZZ_KD_24.ip = 0L, ZZZ_LG_24.ip = 1.049, ZZZ_LV_24.ip = 1.372, 
    ZZZ_SP_24.ip = 1.83, AAA_LN_06.id = 1.991, AAA_LV_06.ip = 2.555, 
    AAA_SP_06.ip = 4.209, AAA_LV_06.id = 1.375, AAA_SP_06.id = 0.75, 
    GGG_LV_06.ip …
Run Code Online (Sandbox Code Playgroud)

plot r heatmap

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

使用GGPLOT创建ROC曲线

我有以下数据:

df <- structure(list(TPR = c(0.02, 0.04, 0.06, 0.08, 0.1, 0.12, 0.14, 
0.16, 0.18, 0.2, 0.22, 0.24, 0.26, 0.28, 0.3, 0.32, 0.34, 0.36, 
0.38, 0.4, 0.42, 0.44, 0.46, 0.48, 0.5, 0.52, 0.54, 0.56, 0.58, 
0.6, 0.62, 0.64, 0.64, 0.64, 0.66, 0.68, 0.7, 0.72, 0.74, 0.76, 
0.78, 0.8, 0.8, 0.82, 0.82, 0.84, 0.84, 0.84, 0.86, 0.86, 0.86, 
0.86, 0.88, 0.88, 0.9, 0.92, 0.92, 0.92, 0.92, 0.94, 0.94, 0.96, 
0.96, 0.96, 0.96, 0.96, 0.96, 0.98, 0.98, 0.98, 0.98, 0.98, 0.98, 
0.98, 0.98, …
Run Code Online (Sandbox Code Playgroud)

plot r ggplot2

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

如何在Rinydown中启用表情符号,以便在Shiny-Server中发布后显示

我有以下Rmarkdown代码,它使用Hadley的emo(ji)包.

---
title: "My First Shiny"
runtime: shiny
output: 
  flexdashboard::flex_dashboard:
    orientation: rows
    vertical_layout: scroll
---


```{r setup, include=FALSE}
```


Rows {data-height=800}
-----------------------------------------------------------------------

### Section1 `r strrep(emo::ji("heart_eyes_cat"), 5)`

Some text
Run Code Online (Sandbox Code Playgroud)

在我的Rstudio IDE中,生成这个没有问题:

在此输入图像描述

由于图像中的高度表现,表情符号未能出现在我当地的Shiny-server中.

我该如何启用它?

r emoji r-markdown shiny shiny-server

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

如何在R中的主热图的侧面添加额外的单列热图

我有以下脚本:

library("gplots")
mydata <- mtcars
mydata.nr <- nrow(mydata)
mydata.newval <-  data.frame(row.names=rownames(mydata),new.val=-log(runif(mydata.nr)))

# Functions
hclustfunc <- function(x) hclust(x, method="complete")
distfunc <- function(x) dist(x,method="euclidean")

# Set colors
hmcols <- rev(redgreen(256));

# Plot the scaled data
heatmap.2(as.matrix(mydata),dendrogram="row",scale="row",col=hmcols,trace="none", margin=c(8,9), hclust=hclustfunc,distfun=distfunc);
Run Code Online (Sandbox Code Playgroud)

其中生成以下热图: 在此输入图像描述

现在给出一个新的data.frame,其中包含每辆车的新值:

mydata.nr <- nrow(mydata)
mydata.newval <-  data.frame(row.names=rownames(mydata),new.val=-log(runif(mydata.nr)))
Run Code Online (Sandbox Code Playgroud)

我想创建一个单列热图,其中渐变灰色位于行名旁边.如何在R heatmap中实现这一点?

plot r

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

不区分大小写的R中的字符串向量

我有以下向量:

 mylist <- c("MBT.LN.ID", "ISA51VG.LN.ID", "R848.LN.ID", "sHz.LN.ID", "FK565.LN.ID",
    "bCD.LN.ID", "MALP2s.LN.ID", "ADX.LN.ID", "AddaVax.LN.ID", "FCA.LN.ID",
    "Pam3CSK4.LN.ID", "D35.LN.ID", "ALM.LN.ID", "K3.LN.ID", "K3SPG.LN.ID",
    "MPLA.LN.ID", "DMXAA.LN.ID", "cGAMP.LN.ID", "Poly_IC.LN.ID",
    "cdiGMP.LN.ID")
Run Code Online (Sandbox Code Playgroud)

我想以不区分大小写的方式按字母顺序对它们进行排序.

预期的输出是这样的:

 [1] "AddaVax.LN.ID"  "ADX.LN.ID"      "ALM.LN.ID"      "bCD.LN.ID"      "cdiGMP.LN.ID"   "cGAMP.LN.ID"   
 [7] "D35.LN.ID"      "DMXAA.LN.ID"    "FCA.LN.ID"      "FK565.LN.ID"    "ISA51VG.LN.ID"  "K3.LN.ID"      
[13] "K3SPG.LN.ID"    "MALP2s.LN.ID"   "MBT.LN.ID"      "MPLA.LN.ID"     "Pam3CSK4.LN.ID" "Poly_IC.LN.ID" 
[19] "R848.LN.ID"     "sHz.LN.ID"   
Run Code Online (Sandbox Code Playgroud)

我尝试了但失败了(使用R.3.2.0 alpha):

> sort(mylist)
 [1] "ADX.LN.ID"      "ALM.LN.ID"      "AddaVax.LN.ID"  "D35.LN.ID"
 [5] "DMXAA.LN.ID"    "FCA.LN.ID"      "FK565.LN.ID"    "ISA51VG.LN.ID"
 [9] "K3.LN.ID"       "K3SPG.LN.ID"    "MALP2s.LN.ID"   "MBT.LN.ID"
[13] "MPLA.LN.ID"     "Pam3CSK4.LN.ID" "Poly_IC.LN.ID"  "R848.LN.ID"
[17] "bCD.LN.ID"      "cGAMP.LN.ID"    "cdiGMP.LN.ID"   "sHz.LN.ID"
Run Code Online (Sandbox Code Playgroud)

r

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

如何使用 dplyr 和 stringr 替换特定列中每一行的字符串

我有以下内容:


library(tidyverse)

df <- tibble::tribble(
  ~sample, ~colB, ~colC,
  "foo",   1,  2,
  "bar_x",   2,  3,
  "qux.6hr.ID",   3,  4,
  "dog",   1,  1
)


df
#> # A tibble: 4 x 3
#>       sample  colB  colC
#>        <chr> <dbl> <dbl>
#> 1        foo     1     2
#> 2      bar_x     2     3
#> 3 qux.6hr.ID     3     4
#> 4        dog     1     1

df <- factor(final_df$samples, levels=c("bar_x","foo","qux.6hr.ID","dog"))

    df
#> [1] foo        bar_x      qux.6hr.ID dog       
#> Levels: bar_x foo qux.6hr.ID dog
Run Code Online (Sandbox Code Playgroud)

我想要做的是对于sample列中的每一行删除这些子字符串:_x以及.6hr …

regex r stringr dplyr tidyverse

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

如何在成对相关散点图中包括密度着色

我有以下代码:

library(GGally)
library(nycflights13)
library(tidyverse)

dat <- nycflights13::flights %>% 
       select(dep_time, sched_dep_time, dep_delay,  arr_time, sched_arr_time, arr_delay)  %>% 
       sample_frac(0.01)
dat
ggpairs(dat)
Run Code Online (Sandbox Code Playgroud)

它产生了这个:

在此输入图像描述

如何添加密度着色,使其如下所示:

在此输入图像描述

r ggplot2 ggally tidyverse

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