它与默认的内联钩子有关,我意识到并且我已经尝试了它(钩子)并且还阅读了这个线程和Yihui 关于钩子的页面,但是我无法解决我的问题.我甚至尝试过Sacha Epskamp的这个建议,但在我的情况下它没有做到这一点.
我正在使用\Sexpr并做一些\Sexpr{load("meta.data.saved"); meta.data[1,7]}在我的报告中打印关键字的方法,问题是人们编写这些关键字(我无法控制的人)正在使用特殊的乳胶字符($,&,%,#等. )当它们被传递到我的.tex文件时,我没有\一个糟糕的时间.
我有一个包含此代码的.Rnw文件,
\documentclass{article}
\begin{document}
Look \Sexpr{foo <- "me&you"; foo} at this.
\end{document}
Run Code Online (Sandbox Code Playgroud)
Thsi创建一个带有非法LaTeX字符的.tex文件.像这样,
<!-- Preamble omitted for this example. -->
\begin{document}
Look me&you at this.
\end{document}
Run Code Online (Sandbox Code Playgroud)
我有兴趣得到一个看起来像这样的输出,
<!-- Preamble omitted for this example. -->
\begin{document}
Look me\&you at this.
\end{document}
Run Code Online (Sandbox Code Playgroud)
很抱歉这个简单的问题,但有人可以帮助我,也许其他人,开始如何修改默认的内联挂钩\Sexpr?
我有一个geom_bar情节,我想设定的长度 geom_hline.
我有这个数据,
set.seed(666)
df <- data.frame(
date = seq(Sys.Date(), len= 156, by="4 day")[sample(156, 26)],
IndoorOutdoor = rep(c(-1,1), 13), #Change so there are only 26 rows
Xmin = sample(90, 26, replace = T),
Ymin = sample(90, 26, replace = T),
Zmin = sample(90, 26, replace = T)
)
df$XYZmin <- rowSums(df[,c("Xmin", "Ymin", "Zmin")])*df$IndoorOutdoor
df[,7:9] <- df[,3:5]*df[,2] #Adding the sign to each X/Y/Z
names(df)[7:9] <- paste0(names(df)[3:5],"p") #to differentiate from your X/Y/Z
require(ggplot2)
df.m <- melt(df[,c(1:2,6:9)], measure.vars=c("Xminp", "Yminp", "Zminp")) …Run Code Online (Sandbox Code Playgroud) 我有一个我一直在努力的医院的事件线图.
我还没有解决的挑战是,1)排序上的情节线,从而使患者线通过评估-日期排序,2)着色由变量"OpenCASE中"行,最后,3)我想喜欢删除2014年(或其他一些随机日期)案例的排放点(蓝色方块).
任何帮助,将不胜感激?
这是我的样本数据,
library(ggplot2)
library(plyr)
df <- data.frame(
date = seq(Sys.Date(), len= 156, by="5 day")[sample(156, 78)],
openCase = rep(0:1, 39),
patients = factor(rep(1:26, 3), labels = LETTERS)
)
df <- ddply(df, "patients", mutate, visit = order(date))
df$visit <- as.factor(df$visit)
levels(df$visit) <- c("Assessment (1)", "Treatment (2)", "Discharge (3)")
qplot(date, patients, data = df, geom = "line") +
geom_point(aes(colour = visit), size = 2, shape=0)
Run Code Online (Sandbox Code Playgroud)
我知道我的示例数据并不完美,因为一些评估数据是在治疗之后,一些排放数据在评估数据之前,但是我的基础数据被搞砸了的那部分挑战.
它目前看起来像什么,

我的数据是从数据库传递的,看起来像这样,
df <- structure(list(date = structure(c(15965L, 15680L, 16135L, 15730L,
15920L, 15705L, …Run Code Online (Sandbox Code Playgroud) 我正在重命名数据框中的大多数变量,我的方法并没有给我留下太深刻的印象.
因此,SO上的任何人是否有更智能或更快的方式,而下面仅使用基数?
data(mtcars)
# head(mtcars)
temp.mtcars <- mtcars
names(temp.mtcars) <- c((x <- c("mpg", "cyl", "disp")),
gsub('^', "baR.", setdiff(names (mtcars),x)))
str(temp.mtcars)
'data.frame': 32 obs. of 11 variables:
$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
$ disp : num 160 160 108 258 360 ...
$ baR.hp : num 110 110 93 110 175 105 245 62 95 123 …Run Code Online (Sandbox Code Playgroud) 我需要在data.frame中对一些列进行求和,并使用一条规则来说明,如果只有1或更少的缺失要求总和,NA则如果缺少一个以上的观察,则要对一列NA进行求和.
说我有这样的数据,
dfn <- data.frame(
a = c(3, 3, 0, 3),
b = c(1, NA, 0, NA),
c = c(0, 3, NA, 1))
dfn
a b c
1 3 1 0
2 3 NA 3
3 0 0 NA
4 3 NA 1
Run Code Online (Sandbox Code Playgroud)
我应用我的规则,并将少于2的列总和NA.所以我得到这样的东西.
a b c
1 3 1 0
2 3 NA 3
3 0 0 NA
4 3 NA 1
5 9 NA 4
Run Code Online (Sandbox Code Playgroud)
我玩过colSums(dfn, na.rm = FALSE)和colSums(dfn, …
因此,我列出了没有标准格式的电话号码,因此可以是(123)-456-7890、1234567890、456890、456-7890。
我想浏览一下我的电话号码列表并将其格式设置为123-456-7890 456-7890
到目前为止,我在R中拥有的是
phone_num <- gsub("-","", gsub("\\(","", gsub("\\)","", csv_file$Phone)))
if(nchar(phone_num)== 10) {
cleaned_phone <-gsub("(\\d{3})(\\d{3})(\\d{4}$)", "\\1-\\2-\\3", phone_num)
}
else if (nchar(phone_num) == 7){
cleaned_phone <-gsub("(\\d{3})(\\d{4}$)", "\\1-\\2", phone_num)
}
else (nchar(phone_num) != 7 || nchar(phone_num) != 10){
cleaned_phone <- #delete entry
}
Run Code Online (Sandbox Code Playgroud)
但是我遇到了错误-有什么想法吗?
我希望输出的长度为10的电话号码格式为123-456-7890,长度为7的电话号码格式为123-4567。对于无效的条目,应将其删除。
谢谢!!!
我正在尝试构建一个图,其中我绘制了正态分布的变量,显示了它们在x轴上的平均值和y轴上的标准偏差(SD).有点像密度图,但不是在y轴上有密度,我想要SD(值).
我正在处理下面的数据,
set.seed(1)
mu1 <- rnorm(10^5, mean = 1, sd = 1)
mu3 <- rnorm(10^5, mean = 3, sd = 2)
Run Code Online (Sandbox Code Playgroud)
两个正态分布的变量.在这里他们的意思和sd,
# install.packages("tidyverse", dependencies = TRUE)
require(tidyverse)
tibble(mu1, mu3) %>% summarise_all(funs(mean, sd))
#> # A tibble: 1 x 4
#> mu1_mean mu3_mean mu1_sd mu3_sd
#> <dbl> <dbl> <dbl> <dbl>
#> 1 0.9993454 3.000825 0.9982848 1.998234
Run Code Online (Sandbox Code Playgroud)
我玩过ggplot2和其他整齐的软件包,以便更接近我想要的东西.我也试过从一个盒子图中复制这个函数做类似的事情,但是还成功了.
这是我的开始,
tibble(mu1, mu3) %>% gather() %>% ggplot() +
geom_density(aes(x = value, colour = key)) +
labs(x = …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种简单的方法来旋转dplyr的tibble摘要.
说我做的是这样的,
# install.packages(c("dplyr"), dependencies = TRUE)
library(dplyr)
mtcars %>%
group_by(am) %>%
summarise(
n = n(),
Mean_disp = mean(disp),
Mean_hp = mean(hp),
Mean_qsec = mean(qsec),
Mean_drat = mean(drat)
)
#> # A tibble: 2 x 6
#> am n Mean_disp Mean_hp Mean_qsec Mean_drat
#> <dbl> <int> <dbl> <dbl> <dbl> <dbl>
#> 1 0 19 290.3789 160.2632 18.18316 3.286316
#> 2 1 13 143.5308 126.8462 17.36000 4.050000
Run Code Online (Sandbox Code Playgroud)
但是,我想要的是获得或多或少的输出,
#> # A tibble: 5 x 2
#> am …Run Code Online (Sandbox Code Playgroud) 我正在努力抓住一个字符串中的两个不同元素.
字符串看起来像这样,
str <- c('a_abc', 'b_abc', 'abc', 'z_zxy', 'x_zxy', 'zxy')
Run Code Online (Sandbox Code Playgroud)
我已尝试过不同的选项?grep,但我无法做到正确,做这样的事情,
grep('[_abc]:[_zxy]',str, value = TRUE)
Run Code Online (Sandbox Code Playgroud)
我想要的是,
[1] "a_abc" "b_abc" "z_zxy" "x_zxy"
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
我有一个矩阵列表,例如 list(M1,M2,M3,M4)
我想得到一个矩阵,它添加所有矩阵M1+M2+M3+M4并将每一行除以rowSums(M1)+rowSums(M2)+rowSums(M3)+rowSums(M4).
这是一个示例列表,
lst <- list(M1 = matrix(c(1,4,2,5), 2, 2), M2 = matrix(c(2,6,3,7), 2, 2))
lst
#> $M1
#> [,1] [,2]
#> [1,] 1 2
#> [2,] 4 5
#>
#> $M2
#> [,1] [,2]
#> [1,] 2 3
#> [2,] 6 7
Run Code Online (Sandbox Code Playgroud)
我想要的结果是什么,
(1+2)/((2+1)+(2+3)) = 0.375 (2+3)/((2+1)+(2+3)) = 0.625
(4+6)/((6+7)+(4+5)) = 0.4545455 (5+7)/((6+7)+(4+5)) = 0.5454545
Run Code Online (Sandbox Code Playgroud)