小编And*_*ico的帖子

cdk在嵌套情况下拖放

这是关于"cdk dnd"和"嵌套"的第三个问题!

我没有得到另一个SO问题的hacky建议.

所以这里有一个非常简单的基础- > STACKBLITZ < -我创造了.一切正常,我与容器内的嵌套元素进行交互.

当我尝试仅对嵌套元素进行排序时,angular会尝试使用容器本身对嵌套元素进行排序...这会产生不需要的行为.

有谁知道如何解决这个问题?明天我会继续这个工作.

drag-and-drop angular angular-cdk

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

使用grepl在R中提取子字符串

我有一个表格,其字符串列格式如下

abcdWorkstart.csv
abcdWorkcomplete.csv
Run Code Online (Sandbox Code Playgroud)

我想提取该文件名中的最后一个字.所以我认为开始模式是"工作"这个词,结束模式是".csv".我用grepl写了一些东西,但没有用.

grepl("Work{*}.csv", data$filename)
Run Code Online (Sandbox Code Playgroud)

基本上我想提取Work和.csv之间的任何东西

期望的结果:

start
complete
Run Code Online (Sandbox Code Playgroud)

string substring r dataframe

8
推荐指数
4
解决办法
832
查看次数

将图像添加到ggplot标题中

我想在ggplot标题中添加一个图像或svg.

在此输入图像描述

这就是我的目标:

在此输入图像描述

让眼睛" 在这里 "

以下是我最好的尝试.

我对它不满意,因为我必须尝试错误以使它进入正确的位置.不是一般的解决方案.

library(ggplot2)
library(raster)
library(grid)

img1 <- as.matrix(raster(system.file("external/rlogo.grd", package="raster")))
img1[img1>128] <- NA
img1[img1>0] <- 0
image(img1)

g1 <- rasterGrob(img1, interpolate=TRUE)

p <- ggplot(mtcars, aes(wt, mpg)) +
  geom_point() + 
  ggtitle("       <- dat rLogo tho") +
  annotation_custom(g1,xmin = 1.2,1.6,35.5,38)

gt <- ggplot_gtable(ggplot_build(p))
gt$layout$clip[gt$layout$name == "panel"] <- "off"
grid.draw(gt)
Run Code Online (Sandbox Code Playgroud)

r image ggplot2

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

根据模板多次替换值

为了对长数据进行GROUP VARIABLE,我想将多个值组合成一个新值.

我已经有一个解决方案,但我觉得可以有更好的实现.

set.seed(1337)
df <- data.frame(coli = sample(rep(1:6,2)), newi = 0 )

replaceList <- list(oneAndTwo=1:2, threeAndFour=3:4, fiveAndSix=5:6)
Run Code Online (Sandbox Code Playgroud)

数据看起来像:

> df
   coli newi
1     1    0
2     6    0
3     1    0
4     5    0
5     3    0
6     2    0
7     6    0
8     2    0
9     4    0
10    4    0
11    3    0
12    5    0
Run Code Online (Sandbox Code Playgroud)

查找模板看起来像:

> replaceList
$oneAndTwo
[1] 1 2

$threeAndFour
[1] 3 4

$fiveAndSix
[1] 5 6
Run Code Online (Sandbox Code Playgroud)

期望的结果:

   coli         newi
1     1    oneAndTwo …
Run Code Online (Sandbox Code Playgroud)

r

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

来自前一组的携带/使用价值

数据:

structure(list(id = c(1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 4, 4, 5), 
               ax = c("a", "a", "b", "b", "b", "b", "b", "b", "c", "c", 
                      "d", "d", "e"), time = c(1, 3, 0, 2, 4, 5, 6, 8, 7, 9, 10, 
                                               11, 12)), .Names = c("id", "ax", "time"), class = c("data.table", 
                                                                                                   "data.frame"), row.names = c(NA, -13L))
Run Code Online (Sandbox Code Playgroud)

好像:

    id ax time
 1:  1  a    1
 2:  1  a    3
 3:  2  b    0
 4:  2  b    2
 5: …
Run Code Online (Sandbox Code Playgroud)

r data.table tidyverse

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

在dplyr select中使用perl = TRUE正则表达式

如何使用perl = TRUE正则表达式选择cols .

data.frame(baa=0,boo=0,boa=0,lol=0,bAa=0) %>% dplyr::select(matches("(?i)b(?!a)"))
Run Code Online (Sandbox Code Playgroud)

grep(needle,haystack,...)出错:正则表达式无效'(?i)b(?!a)',原因'无效正则表达式'

正则表达式确实有效.

grep("(?i)b(?!a)",c("baa","boo","boa","lol","bAa"),perl=T)

> [1] 2 3
Run Code Online (Sandbox Code Playgroud)

有快捷功能/方式吗?

regex r dplyr

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

使用 r xlsx 在 excel 文件中换行/换行

我想在我的 excel 结果中获得一个新行,例如我可以通过进入单元格并按Alt+Enter

数据+代码

df <- data.frame(a="Funny\\nNot",b="rofl\nlol",c="hihi\rh3h3")

xlsx::write.xlsx(df,file = "df.xlsx")
Run Code Online (Sandbox Code Playgroud)

excel newline r line-breaks xlsx

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

剧情中字幕的右/左对齐

如何在“基本”图中更改字幕的位置。有特殊的论点吗?我想动态地使字幕左对齐或右对齐。

数据

plot(mtcars$mpg,mtcars$qsec,xlab="",sub="I WANT TO\nBE RIGHT\nALIGNED")
Run Code Online (Sandbox Code Playgroud)

用红色绘制具有所需输出的数据

在此处输入图片说明

编辑

plottR <- function(...) {
    plot(...)
}

plottR(mtcars$mpg, mtcars$qsec, ylab="Y Must Center", xlab="X Must Center", main="Must center", sub="Must right-align",adj=1)
Run Code Online (Sandbox Code Playgroud)

我可以向plottR输入一些内容,使其仅对齐字幕吗?

编辑2

我才知道。我可以评估title()内部情节。

plottR(mtcars$mpg, mtcars$qsec, ylab="Y Must Center", xlab="X Must Center", main = "Must Center", title(sub ="Hey Only\nim right\ncool huh?",adj=1))
Run Code Online (Sandbox Code Playgroud)

plot r subtitle

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

在封闭件内使用 magrittr 管

1让我们看看这个例子:

1:3 %>% rep(.,2) + 1 %>% sum  #[1] 2 3 4 2 3 4
Run Code Online (Sandbox Code Playgroud)

[2] R 正在做的是:

1:3 %>% rep(.,2) + (1 %>% sum)
Run Code Online (Sandbox Code Playgroud)

[3] 我想让 R 做的是:(给出错误),我喜欢到达18那里。

1:3 %>% (rep(.,2) + 1) %>% sum  #Error in rep(., 2) : attempt to replicate an object of type 'closure'
Run Code Online (Sandbox Code Playgroud)

[4] 所以我需要变得超级蹩脚:

tmp <- 1:3 %>% rep(.,2) + 1
tmp %>% sum #[1] 18
Run Code Online (Sandbox Code Playgroud)

我怎样才能修复 [3] 工作。有人可以向我解释错误消息吗?

编辑

这里

请注意,%>% 左侧的变量 x 作为右侧函数中的第一个参数应用。可以使用 更改此默认行为。这称为占位符。

但是,要记住的一件重要事情是,当 . 出现在嵌套表达式中时,仍然应用第一个参数规则。但是可以使用花括号{}来抑制这种行为 …

r pipe dplyr magrittr

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

自动-“将存储为文本的数字转换为数字”

让我们考虑这个小例子:

df1<- data.frame(A=c(1,NA,"pvalue",0.0003),B=c(0.5,7,"I destroy","numbers all day"),stringsAsFactors = T)
Run Code Online (Sandbox Code Playgroud)

写文件:

openxlsx::write.xlsx(df1,"Test.xlsx")
Run Code Online (Sandbox Code Playgroud)

在我得到的Excel文件,17在文本的单元格。Excel具有“直觉”,即它们是存储为文本的数字。我可以手工转换它们。

如何将这些“标记的”值自动从R内部转换为数字?

在“我想要的”中,我手动将TEXT转换为Numbers。这是“我得到的”部分(红色箭头)中“绿色三角形”后面的选项。

在此处输入图片说明

@Roland的评论:重新排列为列表不起作用。

df1<- as.data.frame(cbind(A=list(1,NA_real_,"pvalue",0.0003),B=list(0.5,7,"I destroy","numbers all day")))
openxlsx::write.xlsx(df1,"Test2.xlsx")
Run Code Online (Sandbox Code Playgroud)

excel r openxlsx

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