我想使用 Docker for Windows 在我的公司网络上托管 Shiny 应用程序。
如何设置 Docker、odbc.ini、odbcinst.ini、freetds.conf 或其他可能的文件,以便我的 Shiny 应用程序可以从内部 Microsoft SQL Server (2016) 数据库查询数据?数据库服务器不在运行 Docker 容器的同一台机器上运行。
我不知道我是否需要更新版本的 FreeTDS 或者我是否错误配置了其中一个文件。我尝试将 IP 地址用于服务器而不是sql-server.host.com在所有文件中,但在下面收到相同的错误消息。
$tsql -C输出:
Compile-time settings (established with the "configure" script)
Version: freetds v1.00.104
freetds.conf directory: /etc/freetds
MS db-lib source compatibility: no
Sybase binary compatibility: yes
Thread safety: yes
iconv library: yes
TDS version: 4.2
iODBC: no
unixodbc: yes
SSPI "trusted" logins: no
Kerberos: yes
OpenSSL: no
GnuTLS: yes
MARS: no
Run Code Online (Sandbox Code Playgroud)
$odbcinst -j …
我正在尝试基于温度创建许多不同的加权方案。
我创建了一个数据框,其中包含8个向量的所有可能组合(每个向量代表一个温度范围)。因此,数据框的列是特定的温度范围,行是权重。
我想将温度范围作为参数传递给case_when,并遍历权重数据帧的每一行,根据实际温度为每一行创建一个新变量,并根据权重数据中的信息为该温度创建关联的权重帧。
使用以下文章,我能够创建一个函数来生成权重数据框:
以编程方式将dplyr :: case_when与参数一起使用
但是我不知道如何case_when使用权重数据帧构造参数。
library(rlang)
library(tidyverse)
create_temp_weights <- function(
from = 31,
to = 100,
by = 10,
weights = exprs(between(., 31, 40) ~ c(0, 0.2),
between(., 41, 50) ~ c(0.5, 0.8),
between(., 51, 90) ~ c(0.8, 1),
between(., 91, 100) ~ c(0.2, 0.8),
TRUE ~ c(-0.1, 0))
) {
# use 999 to map other temperatures to last case
map(c(seq(from, to, by), 999), ~ case_when(!!!weights)) %>%
set_names(c(map_chr(seq(from, to, by),
~ …Run Code Online (Sandbox Code Playgroud) 我想在两个data.tables之间进行非对等连接(示例如下)。有没有办法重命名参数中的 join-by 变量on?
我尝试了以下但它不会产生预期的列名(initial_date和final_date)。我知道我可以data.table::setnames()用来重命名变量。
library(data.table)
dt1 <- data.table(id = c("a", "b"),
initial_date = as.Date(c("2019-01-01", "2019-02-01")),
final_date = as.Date(c("2019-02-01", "2019-03-01")))
dt2 <- data.table(id = c("a", "a", "b", "b"),
x = c(1, 2, 3, 4),
date = as.Date(c("2019-01-01", "2019-01-04", "2019-02-03", "2019-02-19")))
dt2[dt1,
.(x = sum(x)),
on = .(id, initial_date = date >= initial_date, final_date = date <= final_date),
by = .EACHI]
#> id date date x
#> 1: a 2019-01-01 2019-02-01 3 …Run Code Online (Sandbox Code Playgroud) 我可以将日期写入 SQL 表,DBI::dbWriteTable()并看到该列实际上在数据库上被格式化为日期。但是当我使用DBI::dbReadTable()相同的日期列时,它会被强制转换为 R 中的字符列。
如何将 SQL 表读入 R 并保留日期列格式?
library(DBI)
df <- data.frame(date = as.Date("2012-01-01"))
class(df$date)
#> [1] "Date"
udt <- dbConnect(odbc::odbc(), "udt")
dbWriteTable(udt, name = Id(schema = "FarmingAnalytics", table = "test"), value = df, overwrite = TRUE)
df2 <- dbReadTable(udt, name = Id(schema = "FarmingAnalytics", table = "test"))
class(df2$date)
#> [1] "character"
Run Code Online (Sandbox Code Playgroud)
由reprex 包于 2020 年 1 月 20 日创建(v0.3.0)
该.env代词用来指代对象的环境(而不是一个data.frame内)以及内业等dplyr动词,但返回一个错误slice_max。为什么?考虑以下函数:
library(dplyr)
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
library(rlang)
f1 <- function(y) {
d <- tibble(x = runif(20))
d %>%
slice_max(order_by = .data$x, n = .env$y)
}
f2 <- function(y) {
d <- tibble(x = runif(20))
d %>%
filter(.data$x >= .env$y)
}
f3 <- function(y) {
d <- tibble(x = runif(20)) …Run Code Online (Sandbox Code Playgroud) 我想生成HTML和带简历的PDF版本pagedown::html_resume和pagedown::chrome_print。
我尝试从提供的示例中运行以下代码pagedown:
---
title: "Lijia Yu's resume"
author: Lijia Yu
date: "`r Sys.Date()`"
output:
pagedown::html_resume:
# set it to true for a self-contained HTML page but it'll take longer to render
self_contained: false
knit: pagedown::chrome_print
---
Aside
================================================================================
{width=80%}
Contact Info {#contact}
--------------------------------------------------------------------------------
- <i class="fa fa-envelope"></i> lijia.yu@outlook.com
- <i class="fa fa-github"></i> [github.com/yulijia](https://github.com/yulijia)
- <i class="fa fa-phone"></i> +1 000-000-0000
- For more information, please contact me via email.
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
Error in pagedown::chrome_print("/Users/Person/Documents/r/projects/Untitled.Rmd", : …Run Code Online (Sandbox Code Playgroud) r ×6
dplyr ×2
rlang ×2
data.table ×1
date ×1
docker ×1
freetds ×1
knitr ×1
pagedown ×1
r-markdown ×1
shiny ×1
sql ×1
sql-server ×1
tidyverse ×1