我需要从 XML 中提取某些数据,如下所示(为简洁起见,进行了简化)
<Doc name="Doc1">
<Lists Count="1">
<List Name="List1">
<Points Count="3">
<Point Id="1">
<Tags Count ="1">"a"</Tags>
<Point Position="1" />
</Point>
<Point Id="2">
<Point Position="2" />
</Point>
<Point Id="3">
<Tags Count="1">"c"</Tags>
<Point Position="3" />
</Point>
</Points>
</List>
</Lists>
</Doc>
Run Code Online (Sandbox Code Playgroud)
输出应该是一个数据框,该数据框与每个点 ID 的标签和位置相匹配
Point Tag Position
1 1 a 1
2 2 <NA> 2
3 3 c 3
Run Code Online (Sandbox Code Playgroud)
我是 XML 新手,我正在使用 xml2 包。到目前为止,我可以单独提取每个变量,但由于某些点可能没有 Tag data ,我找不到在三个参数之间进行匹配的方法。
> library(xml2)
> xml_data<-read_xml(...)
> xml_data %>% xml_find_all("//Point") %>% xml_attr("Id")
[1] "1" "2" "3"
> xml_data …Run Code Online (Sandbox Code Playgroud) 如何关闭 Rmd HTML 文档中的标题?
---
title: ""
output: html_document
---
rmarkdown::render("index.Rmd")
Run Code Online (Sandbox Code Playgroud)
[警告] 此文档格式需要一个非空元素。请在元数据中指定“title”或“pagetitle”。回退到'index.utf8'
寻找一种快速简单的修复方法,而无需修改底层模板。
我试图将绘图对象放在 r markdown 中。将fig.cap在第一R块运作良好。但是,当我尝试放置第二个数字时出现了问题。请看下面的代码。
YAML 看起来像这样
output:
bookdown::pdf_document2:
toc: no
header-includes:
- \usepackage{setspace}\doublespacing
- \usepackage{float}
- \usepackage{booktabs}
- \usepackage{longtable}
- \usepackage{amsmath}
- \usepackage{multicol}
- \usepackage{threeparttable}
- \usepackage{caption}
Run Code Online (Sandbox Code Playgroud)
r 块中的代码是
{r trend_1, echo=F, fig.cap='The air pollution trend of different groups',out.width='50%',message=F, fig.show='hold'}
Run Code Online (Sandbox Code Playgroud)
绘图代码是(这是两个绘图对象)
state.con.oz
state.con.pm
Run Code Online (Sandbox Code Playgroud)
我有一个错误有! Package caption Error: \caption outside float.什么想法吗?
顺便说一句,我想知道如何在 r markdown 中创建图形脚注?
提前致谢。
我有Archlinux,我尝试运行install.packages("zoo"),我收到以下错误消息:
错误:.onLoad在loadNamespace()中为'tcltk'失败,详情:call:dyn.load(file,DLLpath = DLLpath,...)错误:无法加载共享对象'/ usr/lib/R/library/tcltk /libs/tcltk.so':libtk8.6.so:无法打开共享对象文件:没有这样的文件或目录
我知道这个问题已在本网站上提出,但我找不到合适的答案.
capabilities("tcltk")
# tcltk
# TRUE
library(tcltk)
Run Code Online (Sandbox Code Playgroud)
错误:.onLoad在loadNamespace()中为'tcltk'失败,详情:call:dyn.load(file,DLLpath = DLLpath,...)错误:无法加载共享对象'/ usr/lib/R/library/tcltk /libs/tcltk.so':libtk8.6.so:无法打开共享对象文件:没有这样的文件或目录错误:'tcltk'的包或命名空间加载失败
有关如何解决这个问题的任何想法?
我有安装(编译)rgdal 1.9.2和proj软件包的AWS RHEL6服务器。现在在RI中要安装rgdal软件包,但是会出现此错误:
**测试是否可以加载已安装的软件包
dyn.load(file,DLLpath = DLLpath,...)中的错误:
无法加载共享对象'/home/Roel/R/x86_64-redhat-linux-gnu-library/3.3 /rgdal/libs/rgdal.so':libgdal.so.1:
无法打开共享对象文件:无此类文件或目录错误:加载失败
执行停止
错误:加载失败
*删除'/ home / Roel / R / x86_64-redhat -linux-gnu-library / 3.3 / rgdal'install.packages中的警告:
软件包“ rgdal”的安装退出状态为非零
完整的安装日志可以在这里找到。
当我在Linux中找到rgdal.so时,找不到任何东西。我也找不到如何获得rgdal.so的一部分。
有谁知道如何解决这个问题?
我正在努力在r markdown和中的图形标题下方创建图形注释bookdown。我想要的图形注释如下所示。这个数字来自(Greenstone and Hanna 2014). 我的图实际上是一个
r情节。注释的长度应与图形宽度相同,并自动断线。有任何想法吗???
我有 7 年的每日数据。我想将其分组为每周数据(基于实际日期)并对频率求和。
Date Frequency
1 2014-01-01 179
2 2014-01-02 82
3 2014-01-03 89
4 2014-01-04 109
5 2014-01-05 90
6 2014-01-06 66
7 2014-01-07 75
8 2014-01-08 106
9 2014-01-09 89
10 2014-01-10 82
Run Code Online (Sandbox Code Playgroud)
实现这一目标的最佳方法是什么?谢谢
我有两列包含时间值,我想插入第三列来计算其他两列中时间之间的时差。我的结果不断出错。请帮忙!以下是样本数据集
TOC ORD
00:11:02 00:12:48
00:11:36 00:18:39
00:16:48 00:19:33
00:18:31 00:26:31
00:25:17 00:28:43
00:29:24 00:34:49
00:31:25 00:36:35
00:35:54 00:55:09
00:39:35 00:41:43
00:47:07 01:17:44
01:05:11 01:10:34
01:07:27 01:23:45
01:38:38 01:40:27
Run Code Online (Sandbox Code Playgroud)
数据 画面
数据
library(lubridate)
CR_Date1 <- with(CR_Date, difftime(as.numeric(EXP_DAFB2012$TOC,
EXP_DAFB2012$ORD)))
CR_Date1
Run Code Online (Sandbox Code Playgroud)
R的输出
Error in as.POSIXct.numeric(time1) : 'origin' must be supplied
In as.POSIXct(time1) : NAs introduced by coercion
In addition: Warning message:
as.difftime.EXP_DAFB2012.TOC..EXP_DAFB2012.ORD..4
1 NA secs
2 NA secs
3 NA secs
4 NA secs
5 NA secs
6 NA secs
7 NA …Run Code Online (Sandbox Code Playgroud) 我想在我的 RMD 文件中排除很多代码块,并有想法在eval = FALSE之前和eval = TRUE之后设置全局选项。但这是行不通的。
这是一个玩具示例:
---
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, eval = FALSE)
```
## will not be executed because global option `eval = FALSE`
```{r}
x+y
```
```{r setup II, include=FALSE}
knitr::opts_chunk$set(eval = TRUE, echo = TRUE)
```
## Should give `2` in final document, because eval = TRUE
## NOT working as expected
```{r}
1+1
```
## This is working as expected
```{r, eval = TRUE} …Run Code Online (Sandbox Code Playgroud) setkey()可用于将列设置为数据表的键。但是现在我有三列:
A B C
1 2 3
1 2 4
1 2 5
Run Code Online (Sandbox Code Playgroud)
我想将ABC设置为关键。如何data.table打包?