小编Roc*_*cer的帖子

将鼠标悬停在单词上时在框中显示文本

我想将鼠标悬停在单词上时显示 R markdown 文件中单词的定义。

对于链接,可以这样做:[I'm an inline-style link with title](https://www.google.com "Google's Homepage")将鼠标悬停在I'm an inline-style link with title文本上时Google's Homepage会弹出。但是,我想对一个单词执行相同的操作,并在没有链接的框中给出该单词的定义。

就像是:[word]("Definition of word that pops up in a box upon hovering")。这可能吗?

html r r-markdown

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

在数据框中保留具有特定值的行并删除所有其他行[R]

我正在使用R.

set.seed(1)
Data <- data.frame(id = seq(1, 10), 
               Diag1 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
               Diag2 = sample(c("D123", "E123", "F123"), 10, replace = TRUE), 
               Diag3 = sample(c("G123", "H123", "I123"), 10, replace = TRUE), 
               Diag4 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
               Diag5 = sample(c("J123", "K123", "L123"), 10, replace = TRUE), 
               Diag6 = sample(c("M123", "N123", "O123"), 10, replace = TRUE), 
               Diag7 = sample(c("P123", "Q123", "R123"), 10, replace = TRUE))
Data
Run Code Online (Sandbox Code Playgroud)

我有这样的数据框架.实际上它有34个变量和1.5 Mio观测值.它是一个包含患者数据的数据框.(ID和诊断(ICD10)A123和B123代表某些诊断.我想提取所有患有这些诊断的患者.实际上我正在寻找不同ICD10诊断的100个内的6个诊断.我寻找的每个诊断都可以是出现在任何列中,但它们是相互排斥的.最后,我将有一个大约4000个观测值的数据帧,而不是1.5兆欧.

我的目标是获得一个数据框,我只保留包含A123或B123的行.A123和B123不能在同一行.但它们可以出现在每一栏中.

当我这样做时,我设法为一个变量执行此操作:

DataA123 <- Data[Data$Diag1 == …
Run Code Online (Sandbox Code Playgroud)

r rows

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

使用 %&gt;% 运算符获取向量中特定元素的索引

我想要向量 x 中元素的索引

x <- c("apple", "banana", "peach", "cherry")
Run Code Online (Sandbox Code Playgroud)

有了基础 R 我会这样做

which(x == "peach")
Run Code Online (Sandbox Code Playgroud)

但由于我的 x 位于管道的末端,我想以 magrittr 的方式获取索引。

x %>% getIndex("peach")
Run Code Online (Sandbox Code Playgroud)

我想要的输出是3。

r dplyr magrittr

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

如何计算data.frame中的所有唯一值

我有一个数据框,诊断为变量,患者作为观察.这是32个变量和5000个观测值.

请看这个例子.

我的目标是计算和总结数据框中的所有诊断

set.seed(1)
Data <- data.frame(id = seq(1, 10), 
Diag1 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
Diag2 = sample(c("D123", "E123", "F123"), 10, replace = TRUE), 
Diag3 = sample(c("G123", "H123", "I123"), 10, replace = TRUE), 
Diag4 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
Diag5 = sample(c("J123", "K123", "L123"), 10, replace = TRUE), 
Diag6 = sample(c("M123", "N123", "O123"), 10, replace = TRUE), 
Diag7 = sample(c("P123", "Q123", "R123"), 10, replace = TRUE))
Data
class(Data)
mode(Data)
Run Code Online (Sandbox Code Playgroud)

我知道如何使用plyr包对一列进行此操作

NoDiag1 <- count(Data, …
Run Code Online (Sandbox Code Playgroud)

r count token plyr dataframe

3
推荐指数
1
解决办法
1517
查看次数

ggplot 2 - 使用数值更改图例类别(无因子)

假设我使用mtcars数据集.我想根据重量(wt)设置点的大小.如果我这样做,如下所示,R/ggplot2将给我一个4类(2,3,4,5)的图例.

library(ggplot2)
mtc <- mtcars
p1 <- ggplot(mtc, aes(x = hp, y = mpg))
p1 <- p1 + geom_point(aes(size = wt))     
print(p1)
Run Code Online (Sandbox Code Playgroud)

如何更改图例的比例/名称/类别.如果"类别"是因素,我找到了有关如何执行此操作的信息,但我不知道如何使用数值来执行此操作.我需要保持数字,否则它不再适用于点的大小.

我的真实数据集有大约100个wt值(从1-150开始),我想保留5个值.(ggplot 2给我2 - > 50和100)

1)如何更改该图例的比例?例如,在mtc示例中,我只想要2个大小为2和5的点

2)我正在考虑制作以下类别:

mtc$wtCat[which(mtc$wt<=2)]=1
mtc$wtCat[which(mtc$wt>2 & mtc$wt<=3)]=2
mtc$wtCat[which(mtc$wt>3)]=3

p1 <- ggplot(mtc, aes(x = hp, y = mpg))
p2 <- p1 + geom_point(aes(size = wtCat), stat="identity")     
print(p2)
Run Code Online (Sandbox Code Playgroud)

然后只需将图例中的1,2,3重命名为<= 2,2-3和> 3,但我也不知道如何做到这一点.

非常感谢.

r numeric legend ggplot2

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

在data.frame 2中查找data.frame 1但没有的行

我有一个data.frame(Data)和这个data.frame(Data2)的子集

set.seed(1)
Data <- data.frame(id = seq(1, 10), 
  Diag1 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
  Diag2 = sample(c("D123", "E123", "F123"), 10, replace = TRUE), 
  Diag3 = sample(c("G123", "H123", "I123"), 10, replace = TRUE), 
  Diag4 = sample(c("A123", "B123", "C123"), 10, replace = TRUE), 
  Diag5 = sample(c("J123", "K123", "L123"), 10, replace = TRUE), 
  Diag6 = sample(c("M123", "N123", "O123"), 10, replace = TRUE), 
  Diag7 = sample(c("P123", "Q123", "R123"), 10, replace = TRUE))

Data2 <- Data[1:4,]
Run Code Online (Sandbox Code Playgroud)

如何获得两个data.frames的"差异"?我正在寻找Data中但不在Data2中的行.

我认为这样的数据[!Data2]应该有效,但事实并非如此.

谢谢!

diff r dataframe

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

如何删除字符串中的空字符串(“”)

我在使用 rvest 进行网页抓取时遇到了一个奇怪的问题。

我刮了以下名称:"Ab­dich­ter/in EFZ"起初看起来很正常。但是,当我将文件写入 csv 时,我发现字母之间有“-”。在 Excel 中,这个词看起来像这样:Ab-­dich-ter/in EFZ

所以我做了一个str_split(x, ""),发现字符串实际上是这样的:

c("A", "b", "­", "d", "i", "c", "h", "­", "t", "e", "r", "/", "i", "n", " ", "E", "F", "Z")
Run Code Online (Sandbox Code Playgroud)

我试图从字符串中取出空字符串,但我没有做到。我试过:

my_string <- str_split(my_string , "")
Run Code Online (Sandbox Code Playgroud)

进而

paste0(my_string[my_string != ""])
Run Code Online (Sandbox Code Playgroud)

但这没有帮助。

因此,我想知道:

  1. 空字符串如何进入该字符串,以及
  2. 怎么弄出来。

编辑:这是网页

这是我获得字符串的方式:

library(rvest)

read_html("https://berufskunde.com/ausbildungsberufe/ausbildung-abdichter.html", encoding = "UTF-8") %>% 
  html_nodes(".section") %>% 
  html_nodes(".text-rot") %>% 
  html_text()
Run Code Online (Sandbox Code Playgroud)

r

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

使用列后缀将数据从宽转为长,以获取具有多个列和值的表(使用pivot_longer)

我有一个 tibble/dataframe ,如下所示:

hc_inpatient_sum hc_ambulant_sum hc_inpatient_mean hc_ambulant_mean
5                2               5.5              2.2
Run Code Online (Sandbox Code Playgroud)

我想要的输出是:

my_names       sum  mean
hc_inpatient     5   5.5
hc_ambulant      2   2.2
Run Code Online (Sandbox Code Playgroud)

我使用以下代码得到了我想要的。然而,这似乎相当复杂。我猜想使用不太复杂的代码可以获得相同的结果。

library(dplyr)
library(tidyr)

my_data <- tibble(hc_inpatient_sum = 5, hc_ambulant_sum = 2, hc_inpatient_mean = 5.5, 
hc_ambulant_mean = 2.2)

res <- my_data %>% 
  pivot_longer(cols = everything(), names_to = "my_names", values_to = "my_values") %>% 
  separate(my_names, into = c("my_names", "stats"), sep = "_(?=[^_]+$)") %>% 
  pivot_wider(names_from = "stats", values_from = "my_values")
Run Code Online (Sandbox Code Playgroud)

有没有更直接的方法使用 tidyr::pivot_longer 获得相同的结果?

或者我可以做这样的事情......

res2 <- pivot_longer(my_data, cols = everything(),
             names_to = c(".value", …
Run Code Online (Sandbox Code Playgroud)

r tidyr

0
推荐指数
1
解决办法
1609
查看次数

标签 统计

r ×8

dataframe ×2

count ×1

diff ×1

dplyr ×1

ggplot2 ×1

html ×1

legend ×1

magrittr ×1

numeric ×1

plyr ×1

r-markdown ×1

rows ×1

tidyr ×1

token ×1