小编Rat*_*nil的帖子

vs code docker 添加运行参数,如 --privileged

我尝试使用 --privileged 运行我的容器。我当然可以通过终端手动执行此操作,docker run --privileged ...但我使用 VS Code,当我按“Docker:启动 .Net Core(预览版)”时,它会docker run自行处理命令。

我尝试过类似以下的方法,但没有运气;

       {
       "name": "Docker: Launch .NET Core (Preview)",
       "type": "docker-coreclr",
       "request": "launch",
       "preLaunchTask": "build",
       "appProject": "${workspaceFolder}/Services/***/***.csproj",
       "appFolder": "${workspaceFolder}/Services/***/",
       "dockerBuild": {},
       "dockerRun": {"network": "host", "runArgs": ["--privileged"]}
   },
Run Code Online (Sandbox Code Playgroud)

在 Visual Studio 上,当我将以下行添加到 .csproj“PropertyGroup”标记时,它会起作用;

<DockerfileRunArguments>--net host --privileged -p 80:8081 -p 443:44342</DockerfileRunArguments>
Run Code Online (Sandbox Code Playgroud)

docker .net-core docker-compose visual-studio-code

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

在 R 中使用 lubridate 从日期确定季节

我有一个非常大的数据集,其中DateTime包含一个包含 POSIXct-Values的列。我需要根据列确定季节(冬季 - 夏季)DateTime。我创建了一个在小数据集上运行良好的函数,但是当我在大数据集上使用它时会崩溃。有人能看到我的错误吗?

我创建了 4 个函数:

  • 3 个子函数,以便我可以使用 *apply 函数进行逻辑比较和选择
  • 1 判断季节的函数

下面是函数:

require(lubridate)

# function for logical comparison (to be used in *apply)
greaterOrEqual <- function(x,y){
  ifelse(x >= y,T,F)
}

# function for logical comparison (to be used in *apply)
less <- function(x,y){
  ifelse(x < y,T,F)
}

# function for logical comparison (to be used in *apply)
selFromLogic <- function(VecLogic,VecValue){
  VecValue[VecLogic]
}

# Main Function to determine the season
getTwoSeasons <- function(input.date) {
  Winter1Start …
Run Code Online (Sandbox Code Playgroud)

r posixct lubridate

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

purrr 的 map* 函数族中的计数器

将循环函数应用于向量/列表时,我经常需要某种计数器/索引值。当使用基本循环函数时,可以通过向某个初始值连续加 1 来创建该索引。考虑以下示例:

lets <- letters[1:5]

n = 0
for (le in lets){
  n = n+1
  print(paste(le,"has index",n))
}
#> [1] "a has index 1"
#> [1] "b has index 2"
#> [1] "c has index 3"
#> [1] "d has index 4"
#> [1] "e has index 5"
Run Code Online (Sandbox Code Playgroud)

我能够使用包中的循环函数访问此类索引值的唯一方法purrr是使用map2. 有没有更优雅的方法来仅使用来做到这一点purrr::map()

library(purrr)


map2(lets,1:length(lets),~paste(.x,"has index",.y))

#> [[1]]
#> [1] "a has index 1"
#> 
#> [[2]]
#> [1] "b has index 2"
#> 
#> [[3]] …
Run Code Online (Sandbox Code Playgroud)

for-loop r purrr

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

根据R中的行差异对行进行分组

我有一组不同采样间隔的动物位置.我想要做的是分组和序列,其中采样间隔匹配某个标准(例如,低于某个值).让我用一些虚拟数据来说明:

start <- Sys.time()
timediff <- c(rep(5,3),20,rep(5,2))
timediff <- cumsum(timediff)

# Set up a dataframe with a couple of time values
df <- data.frame(TimeDate = start + timediff)

# Calculate the time differences between the rows
df$TimeDiff <- c(as.integer(tail(df$TimeDate,-1) - head(df$TimeDate,-1)),NA)

# Define a criteria in order to form groups
df$TimeDiffSmall <- df$TimeDiff <= 5

             TimeDate TimeDiff TimeDiffSmall
1 2016-03-15 23:11:49        5          TRUE
2 2016-03-15 23:11:54        5          TRUE
3 2016-03-15 23:11:59       20         FALSE
4 2016-03-15 23:12:19        5          TRUE
5 2016-03-15 …
Run Code Online (Sandbox Code Playgroud)

grouping r

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

RMarkdown:使用 plotly 进行预订

我使用的是bookdown包RMarkdown产生类似的基于Web的书,同样与选项来下载图书的PDF版本。

plotly在我的“书”中包含了图表,这些图表在本书的 html 版本中运行良好。作为交互式,在 YAML 标头中包含 pdf 输出时,“构建书”按钮会引发错误。

基于此描述,我找到了一种使用常规 RMarkdown 文件的解决方法来创建带有plotly图形输出的pdf 。一个最小的解决方案(外部 bookdown)如下所示:

---
title: "test"
output:
  pdf_document: default
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(plotly)

Sys.setenv("plotly_username" = "username")
Sys.setenv("plotly_api_key" = "API")
```


```{r cars}
library(plotly)
p <- plot_ly(x = c(1,2,3,4), y = c(2,4,1,3), type = 'scatter', mode = 'lines')
plotly_IMAGE(p, format = "png", out_file = "output.png")

```
![Caption for the picture.](output.png)
Run Code Online (Sandbox Code Playgroud)

有没有办法将这个解决方案包含在 bookdown 中,以便图表在 html 输出中自动交互,在 …

r knitr r-markdown plotly bookdown

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

R绘图背景地图从Geotiff与ggplot2

使用R基本图,我可以使用以下命令绘制任何geotiff:

library("raster")
plot(raster("geo.tiff"))
Run Code Online (Sandbox Code Playgroud)

例如,下载这些数据,我会做以下事项:

setwd("C:/download") # same folder as the ZIP-File
map <- raster("smr25musterdaten/SMR_25/SMR_25KOMB_508dpi_LZW/SMR25_LV03_KOMB_Mosaic.tif")
Run Code Online (Sandbox Code Playgroud)

你如何在ggplot2中绘制GeoTif文件?

编辑:

1:我用彩色地图替换了样本文件中的灰度图,以说明缺少colortable的问题.

2:在Pascals答案的帮助下,我能够适应和改进这个解决方案,并使输入tif更加动态.我将在下面发布答案.

plot r raster ggplot2

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

R:使用包"rgdal"和"raster"裁剪GeoTiff光栅

我想使用提到的两个包"rgdal"和"raster"来裁剪GeoTiff光栅文件.一切都很好,除了产生的输出tif的质量非常差,灰度而不是颜色.原始数据是来自瑞士联邦地形办公室的高质量栅格地图,示例文件可以在这里下载.

这是我的代码:

## install.packages("rgdal")
## install.packages("raster")
library("rgdal")
library("raster")

tobecroped <- raster("C:/files/krel_1129_2012_254dpi_LZW.tif")
ex  <- raster(xmn=648000, xmx=649000, ymn=224000, ymx=225000)
projection(ex) <- proj4string(tobecroped)
output <- "c:/files/output.tif"

crop(x = tobecroped, y = ex, filename = output)
Run Code Online (Sandbox Code Playgroud)

为了重现此示例,请下载示例数据并将其解压缩到文件夹"c:/ files /".奇怪的是,使用样本数据,图像质量可以正常,但仍然是灰度.

我使用"数据类型","格式"选项,但没有得到任何地方.任何人都能指出解决方案吗?我应该提供输入数据的更多信息吗?

编辑:Josh的例子非常适合样本数据2.不幸的是,我的数据似乎更老了,有些不同.如果您阅读以下GDALinfo,您能告诉我我选择了哪个选项:

# packages same as above
OldInFile = "C:/files/krel1111.tif"
dataType(raster(OldInFile)
[1] "INT1U"

GDALinfo(OldInFile)

rows        4800 
columns     7000 
bands       1 
lower left origin.x        672500 
lower left origin.y        230000 
res.x       2.5 
res.y       2.5 
ysign       -1 
oblique.x   0 
oblique.y   0 
driver …
Run Code Online (Sandbox Code Playgroud)

r crop raster rgdal r-raster

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

R data.table滚动连接"mult"未按预期工作

我有两个data.frames,每个都有一个时间序列.我的目标是使用df2的时间序列来标记df1中最接近的时间戳.df2中的每个时间戳只应在df1中标记一个时间戳!

dates1 <-  as.POSIXct(c("2015-10-26 12:00:00","2015-10-26 13:00:00","2015-10-26 14:00:00"))
values1 <- c("a","b","c")

dates2 <- as.POSIXct(c("2015-10-26 12:05:00","2015-10-26 13:55:00"))
values2 <- c("A","C")

df1 <- data.frame(dates1, values1)
df2 <- data.frame(dates2, values2)
Run Code Online (Sandbox Code Playgroud)

期望的结果:

                dates2 values2 values1
1: 2015-10-26 12:00:00       A       a
2: 2015-10-26 13:00:00       NA      b
3: 2015-10-26 14:00:00       C       c
Run Code Online (Sandbox Code Playgroud)

为了实现这一点,我将data.frames转换为data.tables并使用滚动连接"nearest",如下所示:

dt1 <- data.table(df1)
dt2 <- data.table(df2)

setkey(dt1,"dates1")
setkey(dt2,"dates2")

dt3 <- dt2[dt1,roll = "nearest"]

                dates2 values2 values1
1: 2015-10-26 12:00:00       A       a
2: 2015-10-26 13:00:00       A       b
3: 2015-10-26 14:00:00       C       c
Run Code Online (Sandbox Code Playgroud)

值2"A"使用两次,一次用于12:00时间戳,一次用于13:00.我希望每个value2只使用一次,并查阅data.table手册我希望使用选项mult ="first" …

join r data.table

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

相互测试所有值,并从结果矩阵中形成组

我觉得好像在问错误的问题,并试图重新发明轮子.我错过了什么?

我有一堆值,比方说8,我需要互相测试.我已经构建了一个函数,该函数返回一个矩阵,说明是否有任何两个值都在一个组中.由于缺乏更好的想法,让我在这里粘贴输出:

    data.text <- 
"1     2     3     4     5     6     7     8
1  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE
2  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE
3  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE
4 FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE
5 FALSE FALSE FALSE FALSE  TRUE  TRUE    NA FALSE
6 FALSE FALSE FALSE FALSE  TRUE  TRUE    NA FALSE
7 FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE
8 FALSE FALSE FALSE FALSE …
Run Code Online (Sandbox Code Playgroud)

grouping r matrix

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

行与sf之间的点距离

sf在类型的简单feature()中保存了多个轨迹POINT.我想计算后续位置(即行)之间的欧几里德距离.到目前为止,我使用毕达哥拉斯公式 "手动"计算距离,用于计算2D空间中的欧几里德距离.我想知道我是否可以使用该功能做同样的事情sf::st_distance().这是一个简单的例子:

library(sf)
library(dplyr)

set.seed(1)

df <- data.frame(
  gr = c(rep("a",5),rep("b",5)),
  x  = rnorm(10),
  y = rnorm(10)
 )

df <- st_as_sf(df,coords = c("x","y"),remove = F)


df %>%
  group_by(gr) %>%
  mutate(
    dist = sqrt((lead(x)-x)^2+(lead(y)-y)^2)
  )
#> Simple feature collection with 10 features and 4 fields
#> geometry type:  POINT
#> dimension:      XY
#> bbox:           xmin: -0.8356286 ymin: -2.2147 xmax: 1.595281 ymax: 1.511781
#> epsg (SRID):    NA
#> proj4string:    NA
#> # A …
Run Code Online (Sandbox Code Playgroud)

r dplyr r-sf

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

使用嵌套数据框访问purrr :: map()中的分组变量

tidyr::nest()purrr::map()(-family)结合使用将a data.frame分组,然后对每个子集做一些奇特的事情。考虑以下示例,请忽略我不需要的事实nest()map()执行此操作(这是一个过于简化的示例):

library(dplyr)
library(purrr)
library(tidyr)

mtcars %>% 
  group_by(cyl) %>%
  nest() %>%
  mutate(
    wt_mean = map_dbl(data,~mean(.x$wt))
  )

# A tibble: 8 x 4
    cyl  gear data               cly2
  <dbl> <dbl> <list>            <dbl>
1     6     4 <tibble [4 x 9]>      6
2     4     4 <tibble [8 x 9]>      4
3     6     3 <tibble [2 x 9]>      6
4     8     3 <tibble [12 x 9]>     8
5     4     3 <tibble [1 x 9]> …
Run Code Online (Sandbox Code Playgroud)

r dplyr tidyr purrr

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

dplyr mutate():如果组为 NA,则忽略值

我是新手dplyr,有以下问题。我有data.frame一列作为分组变量。有些行属于一个组,分组列是NA.

我需要使用dplyr函数向 data.frame 添加一些列mutate。我更喜欢dplyr忽略分组列等于的所有行NA。我用一个例子来说明:

library(dplyr)

set.seed(2)

# Setting up some dummy data
df <- data.frame(
  Group = factor(c(rep("A",3),rep(NA,3),rep("B",5),rep(NA,2))),
  Value = abs(as.integer(rnorm(13)*10))
)

# Using mutate to calculate differences between values within the rows of a group
df <- df %>%
  group_by(Group) %>%
  mutate(Diff = Value-lead(Value))

df
# Source: local data frame [13 x 3]
# Groups: Group [3]
# 
#     Group Value  Diff
# …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

以编程方式导入和操作 R 脚本/将 .R 转换为 .Rmd

我有一个R脚本,我想从不同的 R 脚本中导入它,操作它的内容(搜索和替换)并使用不同的扩展名保存(.rmd)。

这是 example.R 文件在操作之前的样子:

# A title
# chunkstart
plot(1,1)
# chunkend
Run Code Online (Sandbox Code Playgroud)

这就是example.Rmd操作后的样子:分别用 ```{r} 和 ``` 替换 " # chunkstart" 和 " # chunkend" 。

# A title
```{r}
plot(1,1)
```
Run Code Online (Sandbox Code Playgroud)

我一直在寻找方法来做到这一点,但到目前为止还没有找到。有任何想法吗?

r r-markdown

0
推荐指数
1
解决办法
411
查看次数