小编Cyr*_*ian的帖子

在R中闪亮的仪表板应用程序中显示LaTeX方程式

我想在我闪亮的仪表板应用程序中显示带有LaTeX方程的Rmd文件.我使用includeMarkdown()和遇到了问题includeHTML().这是我正在努力实现的简化应用程序.这是我的app.R:

library(shinydashboard)
ui <- dashboardPage(
    dashboardHeader(title='My test application'),
    dashboardSidebar(
        sidebarMenu(
            menuItem("Theory", tabName = "theory", icon = icon("book"))
        )
    ),
    dashboardBody(

        tabItems(

            tabItem(tabName="theory",
                    includeMarkdown("Theory.Rmd")
                    #includeMarkdown("Theory.md")
                    #includeHTML("Theory.html")
            )
        )    
    )
)

server <- function(input, output){

}

shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)

我的Theory.Rmd文件:

---
title: "Theory"
output: 
  html_document:
    mathjax: "http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
---
Here is an equation:

$$Q = a(h ? c)^b$$ 
Run Code Online (Sandbox Code Playgroud)

请注意,为了运行应用程序,必须将Theory.Rmd和app.R保存在同一目录(例如工作目录)中,手必须具有这些确切的名称.要获取Rmd文件的markdown Theory.md文件,只需执行以下操作:

library(knitr)
knit("Theory.Rmd","Theory.md")
Run Code Online (Sandbox Code Playgroud)

要获取该Theory.html文件,只需按下Theory.Rmd文件中的Knit to HTML按钮即可

在我的浏览器或RStudio窗口中运行我的应用程序时,includeMarkdown("Theory.Rmd")或者includeMarkdown("Theory.md"),不要渲染方程式,但它在理论菜单项中默认启动,如下所示: 在此输入图像描述 但是使用includeHTML("Theory.html")方程式可以正确渲染,但屏幕显示会缩短,默认情况下它不会在任何菜单项中启动,如下所示:在此输入图像描述

但是当点击理论时,我得到了正确的渲染方程式: …

r r-markdown shiny shinydashboard

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

基于条件标准的过滤器

我在R环境中有一个数据框,我想根据特定的标准进行子集 - 一种条件过滤器.我的数据框是2004 - 2014年间每天每日价值的面板数据集.数据框中的每一天都是单独的观察.每年有366天.我想对数据进行分组,以便只有闰年在第366天保留在面板数据中.在2004年,2008年,2012年的时间范围内有三个闰年.我在一年中和一年中都有一个单独的列.换句话说,我需要一个脚本,它将在没有第366天的情况下返回数据集,但仅限于2004,2008和2012以外的每年.

我已经成功地做到这一点的方式如下:我贴我的日和年列在一起(例如"2006-366"),只是使用dplyr的过滤器命令每年子集(2005-366,2006-366,2007-366, 2009-366,2010-366,2011-366,2013-366,2014-366).然而,这是一种非常粗糙的方法.我希望有人能在这里指出我正确的方向.这里有一些可重复的数据以及我使用的工作流程.

 #Create DF
 year<-rep(c(2004:2014), each=366)
 day<-rep(c(1:366))
 df<-data.frame(day, year)

 #My crude method
 df $reduc<-paste(df$year, df$day, sep="-")

 df <-df %>%
    filter(reduc!="2005-366") %>%
    filter(reduc!="2006-366") %>%
    filter(reduc!="2007-366") %>%
    filter(reduc!="2009-366") %>%
    filter(reduc!="2010-366") %>%
    filter(reduc!="2011-366") %>%
    filter(reduc!="2013-366") %>%
    filter(reduc!="2014-366") 
Run Code Online (Sandbox Code Playgroud)

r subset filter

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

使用r中的ggplot2在工具提示中编辑用于绘制地图的标签

我知道这个问题已被多次询问,但我认为,自从提出这些问题以来,情节的一些基本语法已经改变了.使用ggplotly()创建一个等值区域图提供了我的美学中的long,lat,group和我的一个变量的默认工具提示.我知道工具提示只映射了美学中的什么.我想要做的就是自定义工具提示,以便在我的数据集中显示一些变量(包括那些未映射到美学的变量)而不显示其他变量(例如坐标).下面是一个可重复的例子,到目前为止我尝试过的.我跟着回答其他问题的建议无济于事.

#Load dependencies
library(rgeos)
library(stringr)
library(rgdal)
library(maptools)
library(ggplot2)
library(plotly)

#Function to read shapefile from website
dlshape=function(shploc, shpfile) {
  temp=tempfile()
  download.file(shploc, temp)
  unzip(temp)
  shp.data <- sapply(".", function(f) {
    fp <- file.path(temp, f)
    return(readOGR(".",shpfile))
  })
}

austria <- dlshape(shploc="http://biogeo.ucdavis.edu/data/gadm2.8/shp/AUT_adm_shp.zip", 
                   "AUT_adm1")[[1]]
#Create random data to add as variables
austria@data$example1<-sample(seq(from = 1, to = 100, by = 1), size = 11, replace = TRUE)
austria@data$example2<-sample(seq(from = 1, to = 100, by = 1), size = 11, replace = TRUE)
austria@data$example3<-sample(seq(from = 1, …
Run Code Online (Sandbox Code Playgroud)

interactive r ggplot2 plotly choropleth

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

试图将.rmd文件上传到wordpress

我无法将.rmd文件上传到wordpress。我不确定发生了什么,但是错误表明我没有权限远程发布到wordpress,尽管据我了解,wordpress甚至允许免费帐户进行远程发布。我已经搜索了所有有关堆栈溢出的wordpress R查询,但似乎没有任何效果。这是我的工作流程:

devtools:::install_github("duncantl/RWordPress", force=T)
library(RWordPress)
# Set login parameters (replace admin,password and blog_url!)
options(WordPressLogin = c(admin = 'password'), WordPressURL = 'blog_url/xmlrpc.php')

library(markdown)
library(knitr)
options(markdown.HTML.options =  c(markdownHTMLOptions(default = T),"toc"))

# Upload plots: set knitr options
opts_knit$set(upload.fun = function(file){library(RWordPress);uploadFile(file)$url;})
postThumbnail <- RWordPress::uploadFile("File.rmd",overwrite = TRUE)
Run Code Online (Sandbox Code Playgroud)

产生以下错误:

Error: faultCode:  401  faultString:  You do not have permission to upload files.
Run Code Online (Sandbox Code Playgroud)

我还尝试了以下方法:

knit2wp('fake.rmd', title = 'TITLE', publish = FALSE)
Run Code Online (Sandbox Code Playgroud)

并产生相同的错误。

这是我的会话信息:

sessionInfo()
R version 3.3.0 (2016-05-03)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.5 (El Capitan) …
Run Code Online (Sandbox Code Playgroud)

html wordpress r knitr r-markdown

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

dplyr:如何处理多个值

我有一个数据帧,返回2组相同的分钟.如何处理达到我的预期产量?

df<- read.table(header=TRUE,
                 text="
                 Company  xxx  yyyy  zzzz  cnt
                 abc       1     1    1     20
                 aaa       1     1    2     3
                 bbb       1     1    1     3
                 ddd       2     0    2     100
                 ")
Run Code Online (Sandbox Code Playgroud)

我尝试下面的代码

final= df %>%
       group_by(xxx,yyyy) %>%
         summarise(Topcomp=Company[c(which(min(cnt)==cnt))])
Run Code Online (Sandbox Code Playgroud)

我越来越:

错误:期望单个值

我想要输出如下.

    xxx  yyyy Topcomp
  <int> <int>  <fctr>
1     1     1    aaa,bbb
2     2     0     ddd
Run Code Online (Sandbox Code Playgroud)

r dplyr summarize

5
推荐指数
2
解决办法
95
查看次数

带有微服务间数据传输的 Go-kit 真实世界示例

我尝试使用 go-kit (gokit.io) 并用它构建实际应用程序。我查看示例。这些例子很棒。但我不明白如何在 go-kit 框架中为通信/数据传输提供服务。

我可以看到“真实世界”的运输应用程序,但我不明白它怎么可能是“真实世界”的微服务。我可以在来源中看到,例如,他们构建的预订服务只是将外部存储库传递给服务

type service struct {
    cargoRepository         cargo.Repository
    locationRepository      location.Repository
    routingService          routing.Service
    handlingEventRepository cargo.HandlingEventRepository
}
Run Code Online (Sandbox Code Playgroud)

然后他们从存储库中获取数据(这个存储库属于国外微服务),只需调用该方法:

locationRepository.Find(...)

有人可以解释我吗:

  • go-kit框架中如何构建微服务到微服务通信?请告诉我方式/模式。我完全不明白。

我认为这是因为他们只是共享对数据的直接访问。但在现实世界的微服务中,我预计微服务会相互通信以获取所需的数据。我不明白如何在 go-kit 框架中做到这一点。

go microservices

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

ggplot 在情节丢失的图例中

我很难让一个图例出现在情节中,特别是ggplot + geom_line.

我正在使用plotly 3.6.0ggplot2 2.1.0

为了演示我的问题,我将构建一个简单的数据框:

x = 1:5
y1 = 1:5
y2 = y1 * 2
d = data.frame(x, y1, y2)

g = ggplot(data = d, aes(x=x)) +
geom_line(aes(y = y1, col = 'y1')) + 
geom_line(aes(y = y2, col = 'y2')) + 
scale_color_manual(values = c('red', 'blue'), labels = c('y1 lab', 'y2 lab'), name = '')
g
Run Code Online (Sandbox Code Playgroud)

这将创建一个带有图例的 ggplot 图。但是,当我尝试使用 plotly 创建交互式版本时,图例不再存在。

ggplotly(g)
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法来解决问题:

g_build = plotly_build(g)
g_build$layout$showlegend <- TRUE
g_build$layout$margin <- list(l=80, r=300, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 plotly

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

图像和文本并排 Rstudio 演示文稿/.rpres

我正在尝试实现 99% 的演示文稿使用的基本布局,其中幻灯片的标题下方是一些文本,然后是其下方的图像,旁边是文本。显然,这是在 rstudio 演示文稿中完成的一项非常困难的任务(此处链接没有帮助)。我该怎么做?以下是我正在寻找的内容(用powerpoint制作):

在此处输入图片说明

这是我迄今为止尝试过的:

Title
====================================
incremental: false

<font color = "darkred">
 Additional Text Goes Here</font>

<div align="center">
<img src="fake.png">
</div>

***

<p>&nbsp;</p>
<p>&nbsp;</p>


- Text goes here
- Text goes here
- Text goes here
Run Code Online (Sandbox Code Playgroud)

这显然产生了一个荒谬的结果:

在此处输入图片说明

当前输出的问题:

  • 标题和下面的文字太近了
  • 标题下方的文字向左太远(应与标题对齐)
  • 图片也应与标题对齐

这是我解决这些问题的尝试:

Title
====================================
incremental: false

<p>&nbsp;</p>

<div style="margin-left: 1em;">
<font color = "darkred">
 Additional Text Goes Here</font>
</div>

<p>&nbsp;</p>


<div align="center">
<img src="fake.png">
</div>

***

<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>


- Text goes here
- …
Run Code Online (Sandbox Code Playgroud)

html css r rpres

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

在sparklyr中使用compute()有什么意义?

在本sparklyr教程中,我遵循它,它说我可以用来compute()将前面语句的结果存储dplyr到新的 Spark 数据框中。

“代码 1”中的代码创建了一个名为“NewSparkDataframe”的新 Spark 数据框,并spark_tbl创建了一个我分配给“NewTbl”的数据框。我可以使用查看 Spark 数据框src_tbls()。这一切都在预料之中。

如果我运行“代码 2”而不使用compute()它,仍然会创建一个spark_tbl我再次分配给“NewTbl”的代码。但这一次我无法使用 Spark 查看新的 Spark 数据帧src_tbls()

spark_tbl我想知道如果 Spark 中显然没有“NewSparkDataframe”,“ NewTbl”如何能够运行代码 2?

另外,如果我仍然可以访问使用“NewTbl”compute()新创建的相同内容,那么使用还有什么意义?spark_tbl

代码1:

NewTbl <- mySparkTbl %>%
        some dplyr statements %>%
        compute("NewSparkDataframe")
src_tbls(spark_conn)
"NewSparkDataframe"
Run Code Online (Sandbox Code Playgroud)

代码2:

NewTbl <- mySparkTbl %>%
        some dplyr statements
src_tbls(spark_conn)
Run Code Online (Sandbox Code Playgroud)

r sparklyr

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

在 ggplot 中使用多层美学

我是 ggplot 的新手。我试图了解如何使用 ggplot。我正在阅读 Wickham 的书,但仍在努力思考如何使用aes()函数。

这两个实现之间有什么区别aes()

library(ggplot2)

ggplot(mpg, aes(displ, hwy, colour = class)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)

ggplot(mpg, aes(displ, hwy)) +
  geom_point(aes(colour = class)) +
  geom_smooth(method = "lm", se = FALSE) +
  theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)

他们都打印出明显不同的图表。有什么帮助吗?我真的被困住了。

r ggplot2

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