小编use*_*503的帖子

在R中提取字符串中的最后一个单词

提取句子字符串中最后一个单词的最优雅方法是什么?

句子不以"."结尾.单词由空格分隔.

sentence <- "The quick brown fox"
TheFunction(sentence)
Run Code Online (Sandbox Code Playgroud)

应该回归:"狐狸"

如果可以使用简单的解决方案,我不想使用包.如果存在基于包的简单解决方案,那也没关系.

r

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

R中的数字和函数

我正在寻找R中相当基本的数字函数数字和.

  • 我没有找到预装的功能.
  • 即使在Stackoverflow广泛的R库中,我也没有找到记录.

因此我试着用以下功能结束:

# Function to calculate a digit sum
digitsum = function (x) {sum(as.numeric(unlist(strsplit(as.character(x), split="")))) }
Run Code Online (Sandbox Code Playgroud)

我工作,但我仍然在努力解决两个问题:

  1. 是否真的在普通R中没有数字和的功能?
  2. 是否有更智能的方法来编写此功能?

r

10
推荐指数
2
解决办法
6845
查看次数

在html rmarkdown中嵌入csv

  • 问题陈述
  • 解决方案搜索和

...请参阅rmarkdown示例代码.

通过修改rmarkdown片段来欣赏证明解决方案的答案.

---
title: "Reproducable Example"
author: "user2030503"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## Example: mtcars

```{r}
write.csv2(mtcars, "./file.csv")

# Code to embed mtcars as csv
# Code to provide mechanism for button or link for later user interaction to open/save the csv. 
```

## Problem

* I want to embed the csv file into the html generated by this rmarkdown script.
* Embedding here means, that the csv data are …
Run Code Online (Sandbox Code Playgroud)

csv r r-markdown

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

控制ggplot2 facet height独立于行facet的数量

问题

ggplot2/knitr强制绘图(在LaTeX中)具有默认的宽高比.具有不同面数的两个图导致具有小平面高度的图.这不好.

问题的例子

我正在寻找一种独立于行方面数量来控制ggplot2方面高度的解决方案.

编辑9月9日: 解决方案应该在一个块内工作,因为两个块都在一个块中(如示例代码中所示).因此,调整knitr的数字相关块选项是不可行的,因为块选项同样适用于两个图.

解决方案 - 但有问题

将每个绘图放入gridExtra框并使用facet的数量缩放它的高度,导致不再有不同的facet高度:更好但不完美.

  • 页面上出现的图表边距太大,即使下面还有剩余文本,因此图表的移动距离会更近.
  • 看起来由此操纵的情节得到裁剪.

是否有一个更智能,无问题的解决方案,可以独立于行方面的数量控制ggplot2方面的高度?

\documentclass[a4paper]{article}
\usepackage[margin=1in]{geometry}

\begin{document}

<<setup, results='asis', message=FALSE, echo=FALSE>>=
require(ggplot2)
require(gridExtra)

### Generate two data frames

# Data frame with 2 classes
db.small = data.frame (
  class = as.factor(c(rep("A", 12), rep("B", 12))),
  month = as.factor(rep(1:12, 2)),
  value = runif(2*12, 0, 100)
  )

# Data frame with 5 classes
db.large = data.frame (
  class = as.factor(c(rep("A", 12), rep("B", 12), rep("C", 12), rep("C", 12), rep("D", 12))),
  month …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 knitr

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

R中的密码生成器功能

我正在寻找一种在R中编写密码生成器函数的智能方法:

generate.password (length, capitals, numbers)
Run Code Online (Sandbox Code Playgroud)
  • length:密码的长度
  • 大写:定义大写字母出现位置的向量,向量反映相应的密码字符串位置,默认值应为无大写字母
  • 数字:定义大写字母出现位置的向量,向量反映相应的密码字符串位置,默认值应为无数字

例子:

generate.password(8)
[1] "hqbfpozr"


generate.password(length=8, capitals=c(2,4))
[1] "hYbFpozr"


generate.password(length=8, capitals=c(2,4), numbers=c(7:8))
[1] "hYbFpo49"
Run Code Online (Sandbox Code Playgroud)

string passwords cryptography r

8
推荐指数
3
解决办法
3235
查看次数

R&Knitr html输出:创建折叠和扩展标题

用例

我使用R和Knitr来制作长html报告.报告使用markdown #语法包含标头.这些标题为读者的导航提供了良好的方向......

问题

......但报道有时会很长.从头到尾滚动需要很长时间.报告的读者在到达相关部分之前看到所有报告内容后感到恼火.

有没有办法在Knitr中实现折叠和扩展头元素? 例

要求

  • 默认情况下,标题应折叠.只需单击标题下方的内容即可展开.这将极大地帮助保持报告的外观小巧,便于快速导航.
  • 为了给读者反馈状态标题,它应代表它的状态.我建议使用维基百科中使用的机制(见上图).

html css r knitr

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

sankey图中的标签大小(riverplot包)

使用案例: 我使用riverplot包绘制sankey图表.我需要调整图中节点标签的文本大小.在我的情况下,默认大小太大了.

问题,我已经尝试过了: 不幸的是,包不适用于cex参数.该软件包的开发人员没有向我提供指导.r可 重现的例子:

library(riverplot)

plot(riverplot.example())
Run Code Online (Sandbox Code Playgroud)

产生:

在此输入图像描述

题:

如何将节点标签(A,B,...)调整为比默认值更小或更大的尺寸?

visualization r sankey-diagram riverplot

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

R:删除gridExtra表中的重复行条目

问题:

我使用gridExtra包创建一个表:

require("gridExtra")

# Prepare data frame
col1 = c(rep("A", 3), rep("B", 2), rep("C", 5))
col2 = c(rep("1", 4), rep("2", 3), rep("3", 3))
col3 = c(1:10)
df = data.frame(col1, col2, col3)

# Create table
grid.arrange(tableGrob(df, show.rownames=F))
Run Code Online (Sandbox Code Playgroud)

输出:

默认输出

题:

我想摆脱重复的行条目并实现看起来像这样的跨越条目(这个图像是用Photoshop制作的模型):

期望的输出

任何想法如何在R中以编程方式实现此目标?

r gridextra

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

igraph R中有向树图中从根到叶的所有路径

给出的是一棵树:

library(igraph)

# setup graph
g= graph.formula(A -+ B,
                 A -+ C,
                 B -+ C,
                 B -+ D,
                 B -+ E
)
plot(g, layout = layout.reingold.tilford(g, root="A"))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

顶点"A"是树的根,而顶点"C", "D", "E"被视为末端叶子。

问题:

任务是找到根与叶之间的所有路径。我无法执行以下代码,因为它仅提供最短的路径:

# find root and leaves
leaves= which(degree(g, v = V(g), mode = "out")==0, useNames = T)
root= which(degree(g, v = V(g), mode = "in")==0, useNames = T)

# find all paths
paths= lapply(root, function(x) get.all.shortest.paths(g, from = x, to = leaves, mode = "out")$res) …
Run Code Online (Sandbox Code Playgroud)

r igraph

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

自动轴限制在ggplot2中标识异常值

问题:

我有一个包含2个变量(x,y)的数据框.y变量"通常"在"小范围"内变化.数据框中的异常值很少.这是一个例子:

# uniform sample data frame
# y variable "typically" varying in a "small" range between 0 and 1
df = data.frame(
  x = 1:100,
  y = runif(100)
  )

# add 2 outlier to data frame
# yielding a data frame 
# with 99 normal values and 1 outlier
df[3, 2] = 50
df[4, 2] = -50
Run Code Online (Sandbox Code Playgroud)

因此,数据框在y变量中通常具有98个值和2个异常值,如前10行所示head(df, 10):

        x           y
1   1   0.9785541
2   2   0.2321611
3   3  50.0000000
4   4 -50.0000000
5   5   0.8316717
6 …
Run Code Online (Sandbox Code Playgroud)

plot r ggplot2

5
推荐指数
0
解决办法
1808
查看次数