小编Ita*_*tta的帖子

连接定语和字符串

我正在寻找一种方法来连接 quosure 和一个结果是 quosure 的字符串。实际上,如果我使用paste0()and quo_name(),我就可以做到。但我想知道是否有更优雅的替代方案可以在我的包中编写函数。这是一个通用示例:

library(dplyr)

df <- data_frame(
  z_1 = 1,
  z_2 = 2,
  y_1 = 10,
  y_2 = 20
)

get_var <- function(.data, var) {
  xx = enquo(var)

  select(.data, paste0(quo_name(xx), "_1"), paste0(quo_name(xx), "_2"))
}

get_var(df, z)
# A tibble: 1 x 2
    z_1   z_2
  <dbl> <dbl>
1     1     2
Run Code Online (Sandbox Code Playgroud)

r dplyr tidyeval rlang

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

在R中使用简单特征创建voronoi多边形

我不确定我是否完全了解创建voronoi多边形的帮助页面。

library(sf)

# function to get polygon from boundary box
bbox_polygon <- function(x) {
  bb <- sf::st_bbox(x)

  p <- matrix(
    c(bb["xmin"], bb["ymin"], 
      bb["xmin"], bb["ymax"],
      bb["xmax"], bb["ymax"], 
      bb["xmax"], bb["ymin"], 
      bb["xmin"], bb["ymin"]),
    ncol = 2, byrow = T
  )

  sf::st_polygon(list(p))
}

nc <- st_centroid(st_read(system.file("shape/nc.shp", package="sf")))["BIR79"]
box <- st_sfc(bbox_polygon(nc))
v <- st_voronoi(nc, box)

plot(v)
Run Code Online (Sandbox Code Playgroud)

输出

有解决的办法吗?

r r-sf

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

标签 统计

r ×2

dplyr ×1

r-sf ×1

rlang ×1

tidyeval ×1