使用RStudio和knitr,我看到我可以在我的.rmd文件中添加带有以下代码的TOC.
----------------
output:
html_document:
toc: yes
-----------------
Run Code Online (Sandbox Code Playgroud)
但是,这会将TOC放在HTML文档的最开头.有没有办法在页面上移动TOC?在介绍段落后说?
我试图使用__TOC__,__FORCETOC__但它没有改变TOC的位置.
我正在尝试将列标题和标题下方的水平线分组.当我执行以下操作时,它可以工作,
library(Hmisc)
data(mtcars)
latex(mtcars, file ='', cgroup = c("Group 1", "Group 2"), n.cgroup = c(5, 6))
Run Code Online (Sandbox Code Playgroud)

但是当我尝试删除rownames时,第1组和第2组下的行合并到同一行
library(Hmisc)
data(mtcars)
latex(mtcars, file ='', cgroup = c("Group 1", "Group 2"), n.cgroup = c(5, 6), rowname = NULL)
Run Code Online (Sandbox Code Playgroud)

有谁知道解决这个问题的方法?
我正在尝试将一个 tobit 模型从 Stata 迁移到 R。
健壮的 Stata 命令将只是添加,vce(robust)到模型中。对于聚类,它将是,vce(cluster idvar).
可重现的 Stata 示例:
use http://www.ats.ucla.edu/stat/stata/dae/tobit, clear
tobit apt read math i.prog, ul(800)
tobit apt read math i.prog, ul(800) vce(cluster prog)
Run Code Online (Sandbox Code Playgroud)
可重现的 R 示例:
library("VGAM")
dat <- read.csv("http://www.ats.ucla.edu/stat/data/tobit.csv")
summary(m <- vglm(apt ~ read + math + prog, tobit(Upper = 800), data = dat))
Run Code Online (Sandbox Code Playgroud)
我的理解是,coeftest(m, vcov = sandwich)应该给我强大的 se。
但我得到以下信息: Error: $ operator not defined for this S4 class.
有人可以建议一种方法来估计 vglm 模型中的稳健 se 以及使用 vglm 聚类 …
我有以下数据框,
df <- data.frame(id = c("a", "a", "a", "a", "b", "b", "b", "b"),
time = 1:4, value = c(100, NA, NA, 550, 300, NA, NA, 900))
Run Code Online (Sandbox Code Playgroud)
有人可以通过将值列的差值随时间均匀划分来建议用df替换NA值的方法吗?在时间1,A是100,在时间4 A是550.如何在时间2和3中将NA更改为250和400?然后在2和3时B和500和700?
我可以编写一个复杂的for循环来强制它,但是有更高效的解决方案吗?
我有一个已知的九种颜色宇宙,我想用它来创建用户定义的带有函数的调色板。
col_universe <- list(dark_blue = "#034772", med_blue = "#2888BC",
light_blue = "#73B7CE", green = "#699D46", orange = "#EA8936", gold = "#F9C347",
dark_grey = "#58595B", medium_grey = "#7D7E81",light_grey = "#C1C2C4")
Run Code Online (Sandbox Code Playgroud)
我想做的是按名称创建任意长度的调色板。
custom_colors <- function(color1, color2, color3, ..., color9)
Run Code Online (Sandbox Code Playgroud)
那么我会像下面这样使用它,
pal1 <- custom_colors(dark_blue, green, gold)
pal2 <- custom_colors(gold, orange, light_grey, dark_grey)
Run Code Online (Sandbox Code Playgroud)
我希望pal1并pal2成为字符向量(将提供给 ggplot2)
c("#034772", "#699D46", "#F9C347")
c("#F9C347", "#EA8936", "#C1C2C4", "#58595B")
Run Code Online (Sandbox Code Playgroud) 默认情况下,spark_read_jdbc()将整个数据库表读入Spark。我使用以下语法创建这些连接。
library(sparklyr)
library(dplyr)
config <- spark_config()
config$`sparklyr.shell.driver-class-path` <- "mysql-connector-java-5.1.43/mysql-connector-java-5.1.43-bin.jar"
sc <- spark_connect(master = "local",
version = "1.6.0",
hadoop_version = 2.4,
config = config)
db_tbl <- sc %>%
spark_read_jdbc(sc = .,
name = "table_name",
options = list(url = "jdbc:mysql://localhost:3306/schema_name",
user = "root",
password = "password",
dbtable = "table_name"))
Run Code Online (Sandbox Code Playgroud)
但是,我现在遇到了这样的情况:我在MySQL数据库中有一个表,我希望只将该表的一部分读入Spark。
我如何spark_read_jdbc接受谓词?我尝试将谓词添加到选项列表中没有成功,
db_tbl <- sc %>%
spark_read_jdbc(sc = .,
name = "table_name",
options = list(url = "jdbc:mysql://localhost:3306/schema_name",
user = "root",
password = "password",
dbtable = "table_name",
predicates = "field …Run Code Online (Sandbox Code Playgroud) 我在从以下网站提取数据时遇到问题.如果我通过我的浏览器访问long_url,我可以看到我要抓的表,但是如果我使用httr从R中调用url,我要么没有将数据返回给我,要么我不明白如何它正在归还给我.
base_url <- "http://web1.ncaa.org/stats/exec/records"
long_url <- "http://web1.ncaa.org/stats/exec/records?academicYear=2014&sportCode=MFB&orgId=721"
library(XML)
library(httr)
library(rvest) # devtools::install_github("hadley/rvest")
Run Code Online (Sandbox Code Playgroud)
这些POST请求的结果与我相同,
doc <- POST(base_url, query = list(academicYear = "2014", sportCode = "MFB",
orgId = "721"))
doc <- POST(long_url)
class(doc)
Run Code Online (Sandbox Code Playgroud)
两个POST请求都返回200的状态代码,doc的类是"HTMLInternalDocument"和"XMLInternalDocument",这是允许我刮取页面的普通R对象.但是接下来的rvest和XML函数都是空的,尽管我知道url上有一个表.
table <- html_nodes(doc, css = "td")
table <- readHTMLTable(doc)
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解释一下我的httr请求丢失了吗?我也试过没有运气的GET请求.
我已将一系列SpatialPolygonsDataFrame加载到我的工作区中.每个命名对象有两种"_adm0","_adm1"或"_adm2"附着在国家缩写符号.对于德国来说,这看起来像"DEU_adm0","DEU_adm1"和"DEU_adm2".
我正在尝试将所有"_adm0"数据帧收集到一个列表中,然后可以通过ldply和fortify进行操作.我可以这样做,
mylist <- list(DEU_adm0, FRA_adm0, RUS_adm0, etc...) 在哪里我写出了我想要列入名单的所有国家.
但是,如何"_adm0"通过模式获取所有数据帧?
我已经开始使用下面的代码,但它没有给出我想要的结果作为写出
adm0list <- ls()[str_detect(ls(), "_adm0")]
mylist <- sapply(adm0list, function(x) get(x))
Run Code Online (Sandbox Code Playgroud)
或者,
mylist <- mget(adm0list, .GlobalEnv)
Run Code Online (Sandbox Code Playgroud)
我确实得到了一个带有sapply方法和使用的对象列表mget(),但我不明白为什么这些列表list()与直接使用对象名称不同.我怀疑这个问题的答案会告诉我为什么ldply+ fortify使用该list()方法而不是其他两个.