如果我有一个看起来像这样的表
begin date end date data
2013-01-01 2013-01-04 7
2013-01-05 2013-01-06 9
Run Code Online (Sandbox Code Playgroud)
如何让它像这样返回......
date data
2013-01-01 7
2013-01-02 7
2013-01-03 7
2013-01-04 7
2013-01-05 9
2013-01-06 9
Run Code Online (Sandbox Code Playgroud)
我想做的一件事就是让另一个表只包含所有日期,然后使用date>=begin date
和仅仅使用日期加入表中的表,date<=end date
但是这似乎有点笨拙,只需重复日期就可以保留额外的表.
在某些情况下,我没有数据范围,只是一个as of
日期基本上看起来像我的第一个例子,但没有end date
.该end date
由下一行的"作为"日暗示(即结束日期应该是下一行的as of
-1).我有一个"解决方案",它使用row_number()函数来获取下一个值但我怀疑这种方法,我正在做的方式有一堆嵌套的自联接,这导致非常长的查询时间.
file<-tempfile(fileext=".csv")
download.file(url="ftp://pubftp.spp.org/Markets/DA/LMP_By_SETTLEMENT_LOC/2014/03/28/DA-LMP-SL-201403280100.csv",destfile=file,mode="wb")
Run Code Online (Sandbox Code Playgroud)
这适用于R本身(我不知道该怎么称呼它).然而在RStudio它挂了几分钟,然后我得到以下
trying URL 'ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv'
using Synchronous WinInet calls
Error in download.file(url = "ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv", :
cannot open URL 'ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv'
In addition: Warning message:
In download.file(url = "ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv", :
InternetOpenUrl failed: ''
Run Code Online (Sandbox Code Playgroud)
这是一个小文件,所以它不应该超时,但我真的不知道问题是什么.
我正在尝试设置并行任务,每个工作人员都需要进行数据库查询.我正在尝试使用这个问题中的连接设置每个工作者,但每次我尝试它都会返回<Expired PostgreSQLConnection:(2781,0)>
我注册的许多工作人员.
这是我的代码:
cl <- makeCluster(detectCores())
registerDoParallel(cl)
clusterEvalQ(cl, {
library(RPostgreSQL)
drv<-dbDriver("PostgreSQL")
con<-dbConnect(drv, user="user", password="password", dbname="ISO",host="localhost")
})
Run Code Online (Sandbox Code Playgroud)
如果我尝试运行我foreach
尽管错误,它失败了task 1 failed - "expired PostgreSQLConnection"
当我进入postgres服务器状态时,它会显示已创建的所有活动会话.
我从主R实例中与postgres交互没有任何问题.
如果我跑
clusterEvalQ(cl, {
library(RPostgreSQL)
drv<-dbDriver("PostgreSQL")
con<-dbConnect(drv, user="user", password="password", dbname="ISO",host="localhost")
dbGetQuery(con, "select inet_client_port()")
})
Run Code Online (Sandbox Code Playgroud)
然后它将返回所有客户端端口.它没有给我过期通知但是如果我尝试运行我的foreach命令它将失败并出现相同的错误.
编辑:
我在Ubuntu和2台Windows电脑上试过这个,它们都给出了同样的错误.
另一个编辑:
现在3台Windows电脑
我有一堆可变大小的矩形,我需要将它们大致组合成一个圆圈,大概是中心的最大的矩形.
NB.圆圈的大小不是固定的 - 这只是我追求的整体形状.
这更像是我想象一个懒惰的人类包(一旦一件就到位,它就会停留.)
它们已按其宽度和高度的最大值排序,最大值.
理想情况下 - 我认为这可以通过订购得到保证 - 根本没有差距.
我正在努力的算法是:
for each rectangle:
if first:
place rectangle at origin
add all edges to edge list
else:
for each edge in edge list:
if edge is long enough to accomodate rectangle (length <= width or height depending on orientation):
if rectangle placed on this edge does not collide with any other edges:
calculate edge score (distance of mid-point from origin)
use edge with lowest edge score
place rectangle on …
Run Code Online (Sandbox Code Playgroud) 我已经成功地为我的闪亮服务器实现了一个 nginx 反向代理,以便进行 SSL 和用户身份验证。但是,仍然有一个我无法弄清楚的差距。我闪亮的应用程序有没有办法确定哪个用户实际登录了?
这是我的 /etc/nginx/sites-available/default
server {
listen 80;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name myserver.com;
ssl_certificate /etc/nginx/cert.crt;
ssl_certificate_key /etc/nginx/cert.key;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/shiny.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Fix the “It appears that your reverse proxy set up is broken" error.
proxy_pass http://localhost:3838;
proxy_read_timeout 90;
proxy_redirect http://localhost:3838 https://myserver.com;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd; …
Run Code Online (Sandbox Code Playgroud) 当我做python -mzeep https://testingapi.ercot.com/2007-08/Nodal/eEDS/EWS/?WSDL
操作是空白的。当我在浏览器中拉出它时,我可以在<operation>
标签下找到很多东西。我缺少什么?
我不确定这是否相关,但如果是的话,我不想排除此信息。该网站有一个包含 XSD 和 WSDL 文件的 zip 文件,我不知道如何处理它们。
我的目录结构是这样的:
app-dash\
.devcontainer\
devcontainer.json
Dockerfile
app.py
requirements.txt
etc.files
Run Code Online (Sandbox Code Playgroud)
我想在我的 Dockerfile 中包含这些行
COPY requirements.txt /tmp/pip-tmp/
RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \
&& rm -rf /tmp/pip-tmp
Run Code Online (Sandbox Code Playgroud)
使用这一行也不起作用(具有相同的错误)...
COPY ../requirements.txt /tmp/pip-tmp/
Run Code Online (Sandbox Code Playgroud)
我也有,但在构建过程中它出错了,因为它找不到requirements.txt。如果我将requirements.txt复制到.devcontainer目录,它就会工作。当然,我不想这样做,因为如果我更新了一个需求而忘记了另一个需求,那么以后就会出现问题。我不想只将requirements.txt放在.devcontainer中,因为我想将其托管在azure函数中,该函数期望requirements.txt位于根文件夹中。我也不想从命令行运行构建。
我该如何设置它,以便当我Open Folder in Container
从 vsc 单击时它就会执行此操作?
让我说我有
az<-data.table(a=1:6,b=6:1,c=4)
az[b==4,c:=NA]
az
a b c
1: 1 6 4
2: 2 5 4
3: 3 4 NA
4: 4 3 4
5: 5 2 4
6: 6 1 4
Run Code Online (Sandbox Code Playgroud)
我可以得到所有列的总和
az[,lapply(.SD,sum)]
a b c
1: 21 21 NA
Run Code Online (Sandbox Code Playgroud)
这是我想要的a
,b
但是c
NA.这似乎很容易通过这样做来解决
az[,lapply(na.omit(.SD),sum)]
a b c
1: 18 17 20
Run Code Online (Sandbox Code Playgroud)
这就是我想要的c
,但我不想忽略的价值观a
和b
哪里c
的NA
.这是一个人为的例子,在我的真实数据中,可能有1000多个列,其中包含随机的NA.有没有办法获得na.omit
或其他什么来处理每列而不是整个表,而不依赖于作为向量循环每列?
我想将一个完整的数据框导出到一个已经在数据库(postgresql)中创建并包含类似数据的表中.
我发现几个问题解释有关dbwrite表(.... overwrite = TRUE),我不想覆盖我表中已经存在的数据.我只想用r console中的数据框更新我的表.
谁能让我知道我怎么能这样做..
这样的事情
dbInsertTable(con, df, tablename = "MyTable")
Run Code Online (Sandbox Code Playgroud) 很抱歉因为编码问题打扰您。花了几个小时没有得到解决方案,我决定将其发布在这里。我试图使用Ubuntu 14.04 中的, 编写一个简单的表write.table
,但没有成功。由于 cronjob,我的数据有点混乱:write.csv
write.csv2
ID <- c("",30,26,20,30,40,5,10,4)
b <- c("",2233,12,2,22,13,23,23,100)
c <- c("","","","","","","","","")
d <- c("","","","","","","","","")
e <- c("","","","","","800","","","")
f <- c("","","","","","","","","")
g <- c("","","","","","","","EA","")
h <- c("","","","","","","","","")
df <- data.frame(ID,b,c,d,e,f,g,h)
# change columns to chr
for(i in c(1,2:ncol(df))) {
df[,i] <- as.character(df[,i])
}
str(df)
# data.frame': 9 obs. of 8 variables:
# $ ID: chr "" "30" "26" "20" ...
# $ b : chr "" "2233" "12" "2" ...
# $ c : …
Run Code Online (Sandbox Code Playgroud) r ×6
python ×2
rpostgresql ×2
algorithm ×1
data.table ×1
docker ×1
doparallel ×1
foreach ×1
nginx ×1
packing ×1
rstudio ×1
shiny ×1
shiny-server ×1
soap ×1
sql ×1
wsse ×1
zeep ×1