小编cam*_*lle的帖子

使用dplyr / tidyverse同时对多个变量进行多重配对t检验

假设这样的数据结构:

   ID testA_wave1 testA_wave2 testA_wave3 testB_wave1 testB_wave2 testB_wave3
1   1           3           2           3           6           5           3
2   2           4           4           4           3           6           6
3   3          10           2           1           4           4           4
4   4           5           3          12           2           7           4
5   5           5           3           9           2           4           2
6   6          10           0           2           6           6           5
7   7           6           8           4           6           8           3
8   8           1           5           4           5           6           0
9   9           3           2           7           8           4           4 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

操作图例中的“丢失”标签:tmap

我想操纵我的图例中的“失踪”标签。

图像1

我正在使用 R 中的 tmap 函数。我想将其更改为“缺少或不符合绅士化条件”

我尝试使用 tm_text 函数并考虑如何更改基础数据中的标签,但尚未找到解决方案。另请注意,代码使用映射函数。

########################
# categorical mapping function 
########################

cat.maps.wide.function <- function(data, varname, ltitle, colorplaette){
  tm_shape(data, unit = "mi") +
    tm_polygons(col = varname , # add variable(s)
                style = "cat", # set break pattern to object LQ.cuts
                palette = colorplaette,  # set color fill to blue refreshing
                border.col = "grey40", # color the borders white
                border.alpha = 0.5, # set border transparency
                title = ltitle, # title for legend
                colorNA = "white") + # …
Run Code Online (Sandbox Code Playgroud)

r legend tmap

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

将一个 id 列包含到 split.default 结果列表的所有元素中的规范方法

我根据列名将 data.frame 拆分为一个列表。我想要的是将 id 列 ( id) 不仅包含在一个项目中,而且包含在结果列表的所有元素中。

目前我正在通过随后将id列绑定到列表的所有项目mapbind_cols(通过Map/ do.call/mapply等替代。我自己也可以这样做)。我想知道的是有什么直接的规范方法可以直接执行此操作,可能直接使用split.default其他函数的函数参数或直接通过其他函数,从而节省两三个额外步骤。

可重现的例子

df <- data.frame(
  stringsAsFactors = FALSE,
                id = c("A", "B", "C"),
             nm1_a = c(928L, 476L, 928L),
             nm1_b = c(61L, 362L, 398L),
             nm2_a = c(965L, 466L, 369L),
             nm2_b = c(240L, 375L, 904L),
             nm3_a = c(429L, 730L, 788L),
             nm3_b = c(99L, 896L, 540L),
             nm3_c = c(463L, 143L, 870L)
      )

df
#>   id nm1_a nm1_b nm2_a nm2_b …
Run Code Online (Sandbox Code Playgroud)

split r list

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

如何在 R 中使用 igraph 删除小社区?

igraph从我的数据集“allgenes”创建了我的,并找到了基于 louvain 方法的社区模块。

gD <- igraph::simplify(igraph::graph.data.frame(allgenes, directed=FALSE))
lou <- cluster_louvain(gD)
Run Code Online (Sandbox Code Playgroud)

在绘制模块时,我注意到有几个我希望删除的小社区。我将如何删除包含 5 个或更少节点的社区?

plot(lou, gD, vertex.label = NA, vertex.size=5, edge.arrow.size = .2)
Run Code Online (Sandbox Code Playgroud)

具有不同模块的绘图:

图片

networking module r igraph

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

使用 mutate_all 创建新列

我有一些看起来像这样的数据:

  Year Revenue Cost Rent
1 2016    3000    4  100
2 2017    4000    5  100
3 2018    5000    6  100

df <- data.frame(stringsAsFactors=FALSE,
        Year = c(2016L, 2017L, 2018L),
     Revenue = c(3000L, 4000L, 5000L),
        Cost = c(4L, 5L, 6L),
        Rent = c(100L, 100L, 100L)
)
Run Code Online (Sandbox Code Playgroud)

我想将所有内容分成以下百分比Rent

library(dplyr)
df <- df %>% mutate_at(vars(Revenue:Rent), funs(. /Rent))
Run Code Online (Sandbox Code Playgroud)

这完美地工作。

  Year Revenue Cost Rent
1 2016      30 0.04    1
2 2017      40 0.05    1
3 2018      50 0.06    1
Run Code Online (Sandbox Code Playgroud)

唯一的事情:我丢失了我原来的专栏。

我该如何做mutate_all, 以便我有新的列,比如说叫做 …

r dplyr mutate

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

如何将 SF 对象转换为空间点数据框?

我目前正在尝试将北卡罗来纳州的所有邮政编码映射到传单地图上。最终,我想用来自另一个数据集的值对这些进行颜色编码。

虽然我已经设法用这些值将标记放在地图上,但以带有邮政编码的彩色方式这样做确实会为我的项目增加价值。

我在 R 中下载了 USAboundaries 库,因此我认为我有足够的数据在传单中创建多边形,但数据不是 SpatialPointsDataFrame 格式。

USAboundaries 数据集的示例输出如下所示:

USAboundaries::us_zipcodes()

Simple feature collection with 33144 features and 6 fields
geometry type:  POINT
dimension: XY
bbox:  
 xmin: -176.6316 
 ymin: -14.22075 
 xmax: 145.7536 
 ymax: 71.2738

epsg (SRID):    4326

proj4string:    +proj=longlat +datum=WGS84 +no_defs

First 10 features:
  zipcode zcta5ce10     affgeoid10 geoid10   aland10 awater10                   geometry
    21914     21914 8600000US21914   21914   1924479   477175 POINT (-75.98187 39.57303)
    01001     01001 8600000US01001   01001  29731610  2118827 POINT (-72.62585 42.06258)
    34736     34736 8600000US34736   34736 322808220 78588518 POINT (-81.89624 28.55458)
    46151 …
Run Code Online (Sandbox Code Playgroud)

r leaflet spatial-data-frame r-sf

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

方法 'CachedNetworkImageProvider.load' 的位置参数比重写方法 'ImageProvider.load' 的位置参数少

在此处输入图片说明

请帮我解决颤振中的这个错误,我无法理解错误是什么以及如何解决它。请简单地告诉我解决方案意味着在哪里添加代码行和更改哪个文件,提前谢谢

android-studio flutter flutter-dependencies

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

从 tidygraph 包获取边缘数据

应该很简单,但是我却被这个操作卡住了。我有兴趣提取块边缘数据:23,502 x 3。并指示节点的名称。简而言之,我需要通过名称知道每对节点的权重。

\n

代码:

\n
# A tbl_graph: 11539 nodes and 23502 edges\n#\n# An undirected simple graph with 2493 components\n#\n# Node Data: 11,539 x 3 (active)\n  name            neighbors groups\n  <chr>               <dbl>  <int>\n1 CHANSATITPORN N         1   1540\n2 POBKEEREE V             1   1540\n3 SAINIS G                4    361\n4 HARITOS G               4    361\n5 KRIEMADIS T             4    361\n6 PAPASOLOMOU I           3    361\n# \xe2\x80\xa6 with 11,533 more rows\n#\n# Edge Data: 23,502 x 3\n   from    to weight\n  <int> <int>  <dbl>\n1     1     2      1\n2     3     4      2\n3     3 …
Run Code Online (Sandbox Code Playgroud)

r tidygraph

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

接收面板比例/布局信息的刻面标签器功能

我正在创建一个多面图,其中一个面板比另一个更宽,并且都有相当长的标签。我试图找出一种方法来按照面板的宽度成比例地包裹标签,这样只有在文本太长而无法整齐地放在条带中时才会包裹文本。我想象一些类似于ggfittext, 但用于标签文本的东西。我知道绘图的某些部分是相对的并且取决于屏幕/画布大小,所以我更希望能够说最小的面板应该在给定点破裂,而其他部分应该按比例破裂。

我想出了一种动态设置断点的手动蛮力方法,但它需要绘制两次图并且不能很好地缩放。

没有标签调整的样本数据和绘图:

library(purrr)
library(ggplot2)

df <- tibble::tribble(
  ~field, ~group, ~value,
  "Computer science, mathematics, biology, engineering",           "A", 65,
  "Computer science, mathematics, biology, engineering",           "B", 55,
  "English, social sciences, history, visual and performing arts", "A", 30,
  "English, social sciences, history, visual and performing arts", "B", 25
)

p <- ggplot(df, aes(x = group, y = value)) +
  geom_col() +
  coord_flip() 

p_facet <- p + facet_grid(cols = vars(field), scales = "free_x", space = "free")
p_facet …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2

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

如何使用 mutate_if 更改值

我怎样才能mutate_if()改变bto的值NA以防万一a > 25

我可以做到ifelse,但我觉得mutate_if是为这样的任务而创建的。

library(tidyverse)

tbl <- tibble(a = c(10, 20, 30, 40, 10, 60),
              b = c(12, 23, 34, 45, 56, 67))
Run Code Online (Sandbox Code Playgroud)

r dplyr

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