小编PoG*_*bas的帖子

如何让"wc -l"只打印没有文件名的行数?

wc -l file.txt
Run Code Online (Sandbox Code Playgroud)

输出行数和文件名.

我只需要数字本身(不是文件名).

我可以做这个

 wc -l file.txt | awk '{print $1}'
Run Code Online (Sandbox Code Playgroud)

但也许有更好的方法?

shell wc

127
推荐指数
6
解决办法
14万
查看次数

awk部分字符串匹配(如果列/字部分匹配)

我的虚拟文件如下所示:

C1    C2    C3    
1     a     snow   
2     b     snowman 
snow     c     sowman
Run Code Online (Sandbox Code Playgroud)

如果snow$ 3中有字符串,我想获取行.我可以这样做:

awk '($3=="snow" || $3=="snowman") {print}' dummy_file
Run Code Online (Sandbox Code Playgroud)

但应该有更简单的方法.

awk

68
推荐指数
4
解决办法
19万
查看次数

在data.table中对每个组内的随机行进行采样

您将如何使用data.table有效地获取数据框中每个组内的行样本?

DT = data.table(a = sample(1:2), b = sample(1:1000,20))
DT
    a   b
 1: 2 562
 2: 1 183
 3: 2 180
 4: 1 874
 5: 2 533
 6: 1  21
 7: 2  57
 8: 1  20
 9: 2  39
10: 1 948
11: 2 799
12: 1 893
13: 2 993
14: 1  69
15: 2 906
16: 1 347
17: 2 969
18: 1 130
19: 2 118
20: 1 732
Run Code Online (Sandbox Code Playgroud)

我想的是:DT[ , sample(??, 3), by = a] …

r data.table

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

通过计算特定字符来设置字符串

我有以下字符串:

strings <- c("ABBSDGNHNGA", "AABSDGDRY", "AGNAFG", "GGGDSRTYHG") 
Run Code Online (Sandbox Code Playgroud)

我想切断字符串,一旦A,G和N的出现次数达到一定值,比如说3.在这种情况下,结果应该是:

some_function(strings)

c("ABBSDGN", "AABSDG", "AGN", "GGG") 
Run Code Online (Sandbox Code Playgroud)

我试图用stringi,stringr和正则表达式的表达式,但我无法弄清楚.

regex r gsub stringr stringi

17
推荐指数
3
解决办法
491
查看次数

减少整体图例大小(元素和文本)

我正在用 R ggplot2 绘制一些数据。我将两个变量绘制为散点图,另外两个维度绘制为颜色和形状。但是,该图不适用于外部图例(在 x 轴上很小)。

我把传说搬到里面了,但现在传说太大了!有没有办法让它更小而不涉及分别减小每个单独组件的大小(图例标题、图例标签、图例符号)?

library(ggplot2)
p1  = ggplot(allPars, aes(x = log10(growthRate), y = log10(k), col = Background, shape = Timepoint))+
    geom_point(size = 2)+
    theme(legend.position = c(0.5,0.5))+
    xlab("Log10 Growth Rate")+
    ylab("Log10 K")
fig1 = plot_grid(p1, labels = "AUTO")
save_plot(filename = "~/projects/phd/Chapter4/fig4.pdf", plot = fig1, scale = 1)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

r legend ggplot2

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

评估包含另一个呼叫的呼叫(呼叫中的呼叫)

我遇到了一段代码,其中call包含另一个调用.例如:

a <- 1
b <- 2
# First call
foo <- quote(a + a)
# Second call (call contains another call)
bar <- quote(foo ^ b)
Run Code Online (Sandbox Code Playgroud)

我们可以使用eval(eval(foo))来评估调用,但是eval(bar)不起作用.这是在R尝试运行时"foo" ^ 2看到的(看作foo非数字对象).
如何评估这样的callception

eval r

13
推荐指数
3
解决办法
341
查看次数

更改闪亮服务器目录的默认路径

我正在尝试设置一个闪亮的服务器.我需要更改Shiny apps的默认目录(以避免sudo权限).

我将原版更改shiny-server.conf为:

#CHANGED;
run_as userA;

server {
  listen 3838;

  location / {

    # CHANGED
    site_dir /home/userA/shiny-server;

    # CHANGED
    log_dir /home/userA/shiny-server_log;

    directory_index on;
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,address:3838给出错误:

发生了错误

应用程序配置无效.

EACCES:权限被拒绝,stat'/ home/userA/shiny-server'

问题:如何配置shiny-server.conf使用想要的目录?

r shiny shiny-server

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

绘制sf对象时出错---错误:无法找到函数"geom_sf"

我目前在Windows上运行v 3.3.3版,并有GGPLOT2版本2.2.1和SF软件包的版本0.5-4和我得到一个错误,说是R找不到函数"geom_sf."

我期望找到该功能,因为它在http://ggplot2.tidyverse.org/reference/ggsf.html的 Tidyverse文档中列出.

输出ls("package:ggplot2")没有显示"geom_sf"作为包含的函数,我在库文件中找不到它.

有谁知道我怎么会得到这个难以捉摸的包裹?

r ggplot2

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

正确格式化ggplot2中的两行标题

我正在开发一个自定义函数,可以为图表添加两行字幕,我希望无论用户可能选择输入("character""expression"),都可以正确格式化标题.我在下面创建了一个玩具示例,以说明当前实现该功能的两个问题 -

  1. 当标题不是时NULL,两条线不对齐.
  2. 输入表达式后,连接的标题会被完全破坏.

编辑:

如果你有一个不同的解决方案实现相同的东西(如果用户提供的captionNULL,那么默认的单行表达式打印为标题,否则打印为标题的两行表达式),我也愿意那.

尽管对象的类仍然存在是很重要的,"ggplot"因为我想使用ggplot2函数对结果图进行进一步修改.

# needed libraries
library(ggplot2)

# custom function to prepare a caption
caption_maker <- function(caption) {

  # if caption is not null then add line separator
  if (!is.null(caption)) {
    caption <- paste(caption, "; \n", sep = "")
  }

  # prepare the caption with additional info
  caption <- base::substitute(
    expr =
      paste(
        y,
        "In favor of null: ",
        "log"["e"], …
Run Code Online (Sandbox Code Playgroud)

label r ggplot2 plotmath

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

Rmarkdown:HTML输出中的TOC项目缩进

我想根据标题级别缩进TOC.

我的示例文档如下所示:

# Tutorial
## Start a new project
### Project structure
### Analysis code
Run Code Online (Sandbox Code Playgroud)

我正在编译Rmd文档:

rmarkdown::render("foo.Rmd", 
                  output_options = HTMLlook, 
                  output_file = "foo.html")

HTMLlook <- list(toc = TRUE,
                 toc_depth = 5,
                 toc_float = list(collapsed = FALSE, 
                                  smooth_scroll = TRUE))
Run Code Online (Sandbox Code Playgroud)

这会生成带有TOC的文档

在此输入图像描述

但是,我想缩进TOC(缩进相当于标题级别).想要的结果应该是这样的: 在此输入图像描述

是否可以设置此选项render或者可能将css参数传递给它?

css r knitr r-markdown

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

标签 统计

r ×8

ggplot2 ×3

awk ×1

css ×1

data.table ×1

eval ×1

gsub ×1

knitr ×1

label ×1

legend ×1

plotmath ×1

r-markdown ×1

regex ×1

shell ×1

shiny ×1

shiny-server ×1

stringi ×1

stringr ×1

wc ×1