我有一个.rmd名为文件mycode.rmd保存在一个名为的子目录root/scripts上github上.
R Markdown
========================================================
I'd like to find a way to 'knit to HTML' in RStudio and have the resulting .md
file save one level up in the root directory with a different name, README.md,
so Github will display it.
```{r, results='hide'}
math <- 1 + 1
```
Run Code Online (Sandbox Code Playgroud)
这种方式README.md在根文件夹中始终与我的"真实" .rmd文件保持同步root/scripts.我想做的最多的事情就是在工作时从RStudio按'knit to HTML' mycode.rmd.

更新:
基于@Thomas评论的解决方案:
Here is one option:
```{r, include=FALSE}
# add this chunk …Run Code Online (Sandbox Code Playgroud) 假设我有一个名为的现有列表myList.
myList <- list(list1=c("item1", "item2"), list2=c("item3", "item4"))
Run Code Online (Sandbox Code Playgroud)
myList 因此包含:
$list1
[1] "item1" "item2"
$list2
[1] "item3" "item4"
Run Code Online (Sandbox Code Playgroud)
我想附加.t0到内部list1和list2内部的每个元素,myList所以我最终得到:
$list1
[1] "item1.t0" "item2.t0"
$list2
[1] "item3.t0" "item4.t0"
Run Code Online (Sandbox Code Playgroud)
我不希望回到list(list1=c("item1", "item2"), list2=c("item3", "item4"))步骤并添加.t0那里.我想操纵myList添加.t0.
我有一个类似的问题,因为这一个,但我发现了一个不同的错误.我想将mainfontyaml 设置为roboto,但是当我将其编织为PDF时,我收到错误"fontspec error:"font-not-found"".
---
title: "My Title"
header-includes:
- \usepackage[sfdefault]{roboto}
- \usepackage[T1]{fontenc}
output:
pdf_document:
latex_engine: xelatex
mainfont: roboto
---
Run Code Online (Sandbox Code Playgroud)
运行MacTex 2016
sessionInfo()
#R version 3.3.2 (2016-10-31)
#Platform: x86_64-apple-darwin13.4.0 (64-bit)
#Running under: macOS Sierra 10.12.4
Run Code Online (Sandbox Code Playgroud)
更新1
它确实可以定义字体header-includes,但看起来mainfont规范也应该有效:
---
title: "My Title"
header-includes:
- \usepackage[sfdefault]{roboto}
- \renewcommand{\familydefault}{\sfdefault}
output:
pdf_document:
latex_engine: xelatex
---
Run Code Online (Sandbox Code Playgroud)
更新2
monofont也失败了,但header-includes工作:
---
title: "My Title"
header-includes:
- \usepackage{fontspec}
- \setmonofont[Mapping=tex-text]{inconsolata}
- \usepackage[sfdefault]{roboto}
- \renewcommand{\familydefault}{\sfdefault}
output:
pdf_document: …Run Code Online (Sandbox Code Playgroud) 我有大约一千个潜在的调查项目作为字符串向量,我想减少到几百.通常,当我们谈论数据减少时,我们有实际数据.我将项目管理给参与者并使用因子分析,PCA或其他一些降维方法.
就我而言,我没有任何数据.只是项目(即文本字符串).我想通过消除具有相似含义的项目来减少集合.据推测,如果实际给予参与者,他们将是高度相关的.
我一直在阅读有关文本分析的聚类方法.这个SO问题展示了我在不同的例子中看到过的方法.OP指出,群集解决方案并不能完全回答他/她的问题.以下是在我的案例中如何应用(令人不满意):
# get data (2 columns, 152 rows)
Run Code Online (Sandbox Code Playgroud)
使用样本项的dput()链接到text.R文件
# clustering
library(tm)
library(Matrix)
x <- TermDocumentMatrix( Corpus( VectorSource(text$item) ) )
y <- sparseMatrix( i=x$i, j=x$j, x=x$v, dimnames = dimnames(x) )
plot( hclust(dist(t(y))) )
Run Code Online (Sandbox Code Playgroud)
该图显示项目145和149是聚类的:
145"让你知道你不被通缉"
149"让你知道他爱你"
这些项目共享相同的词干,"让你知道",这可能是聚类的原因.从语义上讲,它们是对立的.
OP与他/她的例子有类似的挑战.一位意见提供者指出wordnet包装是一种可能的解决方案.
问题(根据反馈编辑)
我怎样才能阻止像145和149这样的项目进行聚类,因为它们共享干?
问题重点较少的次要问题:有人在这里看到更好的解决方案吗?我遇到的许多方法都涉及监督学习,测试/训练数据集和分类.我相信我正在寻找的是更多的语义相似性/聚类(例如,FAC pdf).
我不知道为什么我在努力解决这个问题,因为似乎有很多SO答案可以解决这个问题.但我在这里.
我将1和0的向量转换为因子,并将值标记为"是"和"否".
fact <- factor(c(1,1,0,1,0,1),
levels=c(1,0),
labels=c("yes", "no"))
#[1] yes yes no yes no yes
#Levels: yes no
Run Code Online (Sandbox Code Playgroud)
关于将因子转换回数值的问题的答案建议as.numeric(as.character(x))和as.numeric(levels(x)[x].
as.numeric(as.character(fact))
#[1] NA NA NA NA NA NA
as.numeric(levels(fact))[fact]
#[1] NA NA NA NA NA NA
Run Code Online (Sandbox Code Playgroud) 是否可以有条件地填充这些[ggtext][1]文本框?如果“拾取”,我们说颜色“红色”。
library(cowplot)
library(tidyverse)
library(ggtext)
ggplot(mpg, aes(cty, hwy)) +
geom_point() +
facet_wrap(~class) +
theme_half_open(12) +
background_grid() +
theme(
strip.background = element_blank(),
strip.text = element_textbox(
size = 12,
color = "white", fill = "#5D729D", box.color = "#4A618C",
halign = 0.5, linetype = 1, r = unit(5, "pt"), width = unit(1, "npc"),
padding = margin(2, 0, 1, 0), margin = margin(3, 3, 3, 3)
)
)
Run Code Online (Sandbox Code Playgroud) 我试图从 BBC 复制这个数字。我很接近,但我正在努力使图例符号变薄。这可能吗?
library(tidyverse)
library("rio")
url <- "https://gist.githubusercontent.com/ericpgreen/a728be304b811fe7708699682eb4ba42/raw/fd924596e30c131dbaf97c00c9d9863bb40abb9a/bbcCovid.R"
df_plot <- rio::import(url)
ggplot(df_plot, aes(x=date,
y=reorder(Country.Region,
total,
order=TRUE))) +
geom_tile(aes(fill=casesRollf),
color="white",
na.rm = TRUE
#, key_glyph = draw_key_timeseries
) +
theme_bw() + theme_minimal() +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
legend.title = element_blank(),
plot.title.position = "plot") +
scale_x_date(breaks = as.Date(c("2020-02-14",
"2020-03-05",
"2020-03-25",
"2020-04-14")),
date_labels = "%d %b") +
scale_fill_manual(values=
c("#e4e4e4", "#ffeed2",
"#ffda64", "#faab19",
"#d2700d",
"#d56666", "#9a1200",
"#5b0600", "#000000"),
guide = guide_legend(reverse = TRUE),
labels=c("No cases", "1 to 10",
"11 to 50", "51 …Run Code Online (Sandbox Code Playgroud) Facebook为全球超过 1900 万个微区域(2.4 公里网格单元)构建了所谓的相对财富指数。他们在 csv 文件中共享数据( zip ),其中列出了四键 ID、纬度/经度(我认为是图块单元格的左上角)以及图块的索引值。它看起来像这样:
在他们的技术论文中,他们指出这些 2.4 公里的网格单元对应于 Bing 磁贴级别 14。
我以前没有使用过Bing 磁贴。a) 创建或访问覆盖多边形(例如肯尼亚)的 2.4 平铺网格和 b) 将财富指数值从 csv 连接到此网格形状文件的最佳方法是什么?我想要一个具有此财富指数属性的网格多边形,我可以在将来的分析中使用它,通过网格单元从栅格中提取信息。
到目前为止我所知道/认为我所知道的:
sf::st_make_grid()会创建一个网格,但我不认为它会是Bing网格。rosm将绘制 bing 磁贴,但这并不是我想要的。[从 gis.stackexchange.com 移动问题]
编辑 1:RWI csv 文件不再包含四键,但您可以使用上面链接的 python 包来计算它。这里有一个有用的教程。
我正在尝试使用该xlsx包将带有日期列的数据框导出到 Excel 。的帮助文件write.xlsx()说明了格式化日期列的方法。我尝试按照下面的方法进行操作,但生成的 Excel 文件没有显示正确的格式。我可以手动将 Excel 中的单元格格式更改为自定义日期,但这是一个额外的步骤,使其无法重现。
library(lubridate)
library(xlsx)
dat <- data.frame(dates=c("2014-07-16 15:03:16", "2014-07-16 14:52:03", "2014-07-16 16:50:38", "2014-07-12 00:00:00", "2014-07-12 00:00:00"))
dat$dates <- ymd_hms(dat$dates)
wb <- createWorkbook()
saveWorkbook(wb, "output.xlsx")
oldOpt <- options()
options(xlsx.date.format="yyyy-mm-dd HH:mm:ss") # change date format
write.xlsx(dat,
"output.xlsx",
sheetName="output")
options(oldOpt) # revert back to defaults
Run Code Online (Sandbox Code Playgroud)

在尝试找到有关保存由 生成的热图的SO 问题的解决方案的过程中d3heatmap,我webshot在(HT: hrbrmstr )的开发版本中knitr遇到了一个无关的问题。
library(devtools)
devtools::install_github('yihui/knitr', build_vignettes = TRUE)
library(knitr)
Run Code Online (Sandbox Code Playgroud)
安装并加载开发版后knitr,我尝试运行以下.Rmd文件:
---
title: "Untitled"
output: pdf_document
---
```{r}
library(d3heatmap)
d3heatmap(mtcars, scale = "column", colors = "Spectral")
```
Run Code Online (Sandbox Code Playgroud)
提示我安装phantomjs:
webshot::install_phantomjs()
phantomjs.exe has been installed to /Users/USERNAME/Library/Application Support/PhantomJS
Run Code Online (Sandbox Code Playgroud)
我.Rmd再次尝试运行该文件,但出现此错误:
sh: ~/Library/Application Support/PhantomJS/phantomjs: No such file or directory
Quitting from lines 7-9 (test.Rmd)
Error in (function (url = NULL, file = "webshot.png", vwidth = 992, vheight = …Run Code Online (Sandbox Code Playgroud)