小编tst*_*tev的帖子

R Blogdown Hugo 学术主题未渲染站点

我正在尝试使用 R Blogdown Hugo-Academic 主题创建一个网站。通常,我会通过运行以下命令来创建一个网站:

blogdown::new_site(theme = 'gcushen/hugo-academic')
blogdown::serve_site()
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误

failed to extract shortcode: template for shortcode "alert" not found
Run Code Online (Sandbox Code Playgroud)

我在这里找到了一个相关的 github 问题:

但似乎gcushen/hugo-academic正在转向wowchemy

如何解决这个问题?

r hugo blogdown hugo-shortcode

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

在R中为时间戳添加毫秒

我的时间戳管理存在问题.在我的数据集中,我有两个变量,即时间和相对时间.时间是HH:MM:SS.ss格式,而相对时间是数字变量,包含从0开始经过的秒数(即0.76,1.28,1.78,2.38 ......).为简单起见,让我们考虑一下假设情况:

Time <- c("09:33:23.00", "09:35:25.00", "09:36:26.00")
RTime <- c(0.78, 1.28, 3.98)

然后我执行以下操作来添加毫秒时间:

ATime <- strftime(strptime(Time,format="%H:%M:%OS")+(RTime %% 1),format="%H:%M:%OS2")

我希望它能产生:
"09:33:23.78" "09:35:25.28" "09:36:26.98"

但我得到以下结果:
"09:33:23.77" "09:35:25.27" "09:36:26.98"

大部分时间它只有一毫秒.我不明白为什么这样做.我可以在strptime函数中添加0.01 ,即(RTime %% 1) + 0.01.但是我没有发现那么优雅,更重要的是,正如你在上面的例子中看到的那样,它并不总是0.01关 - 就像最后一例一样.有关正在发生的事情的任何提示,或者可能是改进代码的建议?

干杯

[求助]
编辑:感兴趣.这就是我最终解决问题的方法:

ATime <- strftime(strptime(Time,format="%H:%M:%OS")+(RTime %% 1)+0.005,format="%H:%M:%OS2")

这会"强制"舍入而不是截断,这导致了毫秒的差异.
感谢@Josh O'Brien和@nrussell的评论!

datetime r

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

使用data.table在R中查找

我有一个数据集,包含一个长格式的个人重复观察.所以每一行作为一种类型AB观察.以下代码重现数据集.

library(data.table)
set.seed(1487)
dat <- data.table(id = rep(seq(10), 2), 
                  type = c(rep("A", 10), rep("B", 10)), 
                  x = sample.int(100,20))
dat
#     id type  x
#  1:  1    A 38
#  2:  2    A 58
#  3:  3    A 28
#  4:  4    A 21
#  5:  5    A 19
#  6:  6    A 62
#  7:  7    A 52
#  8:  8    A 86
#  9:  9    A 85
# 10: 10    A 90
# 11:  1 …
Run Code Online (Sandbox Code Playgroud)

r data.table

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

在某个单词后提取数字

我正在尝试构建一个正则表达式,以在某个字符串后提取一个6位数字(正数或负数),即"LogL =".

它来自某些软件的文本输出.

   7 LogL=-3695.47     S2=  9.0808       1891 df    2.263     0.2565    
   9 LogL= 2456.30     S2=  1.2789       1785 df    1.244     0.1354    
Run Code Online (Sandbox Code Playgroud)

我在R中尝试了以下内容:

txt <- "   9 LogL= 2456.30     S2=  1.2789       1785 df    1.244     0.1354   "
as.numeric(unlist(strsplit(sub(".*LogL=*", "", txt), " "))[1])
Run Code Online (Sandbox Code Playgroud)

不适用于正数.我想象它是如此粗暴/丑陋的方式.我试着干涉regex101.com

尝试了Stackoverflow相关问题:(1) (2) (3)

我有点迷茫,似乎无法理解正则表达式.我相信这是小菜一碟.救命?

regex r

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

在 Fortran 95 中按值传递参数

如何在调用函数参数时保留其值而不创建新变量?这就是,如何按值传递参数?

在此示例代码中:

program what
  implicit none  
  integer :: a, b, c, d

  a = 1
  b = 2
  c = 3

  print *, a,b,c

  d = f(val(a), val(b), val(c))

  print *, d

  print *, a,b,c

  d = f(a, b, c)

  print *, d

contains

  function f(x,y,z) result(h)
    integer:: x,y,z
    integer :: h

    h = x+y+z
    x = 0
    y = 0
    z = 0
  end function
end program
Run Code Online (Sandbox Code Playgroud)

当我第二次调用该函数时,它只打印 0。

fortran parameter-passing fortran95

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

选择括号之间的逗号分隔值

给出以下简化的示例文本;

not me G(select me, and me)
G(select me) G(also me)
Run Code Online (Sandbox Code Playgroud)

使用regex表达式我想选择之间的所有内容G(...)作为单独的结果,即使有例如逗号也是如此。基于此处的不同答案,是我的第一次尝试。

G\(([^)]+)\)
Run Code Online (Sandbox Code Playgroud)

非常适合第二行,但不适用于第一行。我的第二次尝试是基于其他一些答案,以便从逗号分隔的列表中选择值。

G\(([^),]+)
Run Code Online (Sandbox Code Playgroud)

另一种尝试在此基础上SO,和另一个在此基础上SO

基本上,我需要帮助...

预期产量:

select me
and me
select me
also me
Run Code Online (Sandbox Code Playgroud)

regex linux awk grep

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