TL; DR
我正在使用R中的VGAM包运行Tobit回归 - 这是一个玩具数据集,它一直给我一个我无法诊断的错误:
library(data.table)
library(VGAM)
> sessionInfo()$otherPkgs
$VGAM
Package: VGAM
Version: 0.9-7
Date: 2015-03-06
... <ommitted> ...
reg_data <- structure(list(S = c(1.83271488441825, 0.75411550370994, 0.904938604451928,
0.75411550370994, 0.75411550370994), H = c(0.6429, 0.7788,
0.6292, 0.8892, 0.2035), W= c(1.52497, 1.1391, 1.59722,
1.8406, 1.01865)), .Names = c("S", "H", "W"), class = c("data.table",
"data.frame"), row.names = c(NA, -5L))
minS <- 0.75411550370994
maxS <- 1.83271488441825
m <- vglm(S ~ H, tobit(Upper = maxS, Lower = minS), weights = W, data = reg_data)
Error in lm.wfit(x …Run Code Online (Sandbox Code Playgroud) 我有一个data.table我想要执行分组操作,但希望保留空变量并使用不同的分组变量集.
玩具示例:
library(data.table)
set.seed(1)
DT <- data.table(
id = sample(c("US", "Other"), 25, replace = TRUE),
loc = sample(LETTERS[1:5], 25, replace = TRUE),
index = runif(25)
)
Run Code Online (Sandbox Code Playgroud)
我想找到index关键变量(包括空集)的所有组合的总和.这个概念类似于Oracle SQL中的"分组集",这是我当前解决方法的一个示例:
rbind(
DT[, list(id = "", loc = "", sindex = sum(index)), by = NULL],
DT[, list(loc = "", sindex = sum(index)), by = "id"],
DT[, list(id = "", sindex = sum(index)), by = "loc"],
DT[, list(sindex = sum(index)), by = c("id", "loc")]
)[order(id, loc)]
id loc sindex
1: …Run Code Online (Sandbox Code Playgroud) 我在玩app:
http://shiny.rstudio.com/gallery/plot-plus-three-columns.html
我在顶部行插入一张图片,将其插入"标题"下方
list(img(src="NFL_Header.jpg", width = 400, align = "center")),
Run Code Online (Sandbox Code Playgroud)
但它是合理的,align似乎没有做任何事情.如何为图像指定中心对齐?
我想转换:
library(data.table)
n <- 12
DT <- data.table(
level1 = rep(paste0("Manu", 1:2), each = n / 2),
level2 = rep(paste0("Dept", 1:4), each = n / 4),
level3 = rep(paste0("Store", 1:n))
)
> DT
level1 level2 level3
1: Manu1 Dept1 Store1
2: Manu1 Dept1 Store2
3: Manu1 Dept1 Store3
4: Manu1 Dept2 Store4
5: Manu1 Dept2 Store5
6: Manu1 Dept2 Store6
7: Manu2 Dept3 Store7
8: Manu2 Dept3 Store8
9: Manu2 Dept3 Store9
10: Manu2 Dept4 Store10
11: Manu2 Dept4 Store11 …Run Code Online (Sandbox Code Playgroud) 我正在转换data.table并选择使用reshape2:::dcast,但是我受到data.table的奇怪处理的困扰...这里是一个复制行为的玩具数据集:
> library(data.table)
> library(reshape2)
> DT <- structure(list(STORE = c(32123L, 32469L, 33177L, 33484L, 34772L, 34875L),
VOLUME = c(343.87205, 599.78335, 1665.90895, 712.0343, 465.6489, 622.5189)),
.Names = c("STORE", "VOLUME"),
sorted = "STORE",
class = c("data.table", "data.frame"),
row.names = c(NA, -6L))
> (R1 <- dcast(DT, . ~ STORE, value.var = "VOLUME"))
. 32123 32469 33177 33484 34772 34875
1 . 343.8721 599.7834 1665.909 712.0343 465.6489 622.5189
Run Code Online (Sandbox Code Playgroud)
完美,正是我希望它看起来像(删除.列不是大) - 但它不再被归类为data.table:
> class(R1)
[1] "data.frame"
Run Code Online (Sandbox Code Playgroud)
我试图在data.table包中显式调用data.tables的方法,但是R现在不喜欢这个公式:
> data.table:::dcast.data.table(DT, . ~ …Run Code Online (Sandbox Code Playgroud) 我ggplot2::ggplot用于所有2D绘图需求,包括密度图,但我发现当在一个空间(不同颜色)上绘制具有极端异常值的多个重叠密度时,x轴上的线变得有点分散注意力.
那么我的问题是,您是否可以删除密度图的底部部分?如果是这样,怎么样?
您可以使用此示例:
library(ggplot2)
ggplot(movies, aes(x = rating)) + geom_density()
Run Code Online (Sandbox Code Playgroud)
应该是这样的:
我有一个R Shiny应用程序,其中包含一些我不希望公开的敏感信息,并且不想为了获得密码身份验证而支付任何服务费用.
我的问题是,如果我在GitHub上创建一个私有存储库server.R,ui.R并且所有支持的数据和文件,任何人都可以使用runGitHub命令(下面)或以任何方式访问我的数据来运行它吗?
library(shiny)
runGitHub("<private repository name>", "<my user name>")
Run Code Online (Sandbox Code Playgroud) 我想在我的 RShiny 应用程序的选项卡内显示多个输出对象。在教程中,tabPanel(...)命令只接受参数:
tabPanel("Plot", plotOutput("plot"))
Run Code Online (Sandbox Code Playgroud)
然而,在参考文档在这里,它读取“UI元素Ş到标签中包括”领导让我相信,多是可能的,但我无法找到例子。我尝试将对象作为 vectorc(...)和 list传递给它list(...)。
这里是server.R和ui.R我一直在测试(从闪亮的教程)。
用户界面
library(shiny)
# Define UI for random distribution application
shinyUI(fluidPage(
# Application title
titlePanel("Tabsets"),
# Sidebar with controls to select the random distribution type
# and number of observations to generate. Note the use of the
# br() element to introduce extra vertical spacing
sidebarLayout(
sidebarPanel(
radioButtons("dist", "Distribution type:",
c("Normal" = "norm",
"Uniform" = "unif", …Run Code Online (Sandbox Code Playgroud) 我正在尝试glmnet从glmnet包中使用来运行 LASSO 回归。
我正在使用以下命令:
library(glmnet)
glmnet(a,b,family="binomial",alpha=1)
Run Code Online (Sandbox Code Playgroud)
并且我收到错误:
> Error in if (!all(o)) { : missing value where TRUE/FALSE needed
Run Code Online (Sandbox Code Playgroud)
a是一个矩阵,具有数值。
b是一个以因子为值的向量。
但是,b有一些缺失值。我怀疑这可能是导致错误的原因。但是,我NA在 glmnet 文档中没有看到排除s的选项。
我是一个远程主机,反过来提交的R脚本,但错误上提交一个shell脚本R: command not found或Rscript: command not found(取决于自己是否尝试过R CMD BATCH或Rscript).
我尝试过以下方式提交:
ssh <remote-host> exec $HOME/test_script.sh
ssh <remote-host> `sh $HOME/test_script.sh`
Run Code Online (Sandbox Code Playgroud)
该脚本test_script.sh包含(已尝试Rscript过):
#!/bin/sh
Rscript --no-save --no-restore $HOME/greetme.R
exit 0
Run Code Online (Sandbox Code Playgroud)
该脚本greetme.R仅包含cat("Hello\n").
我感到慌乱的原因是,当我登录remote-host并提交原始脚本时sh $HOME/test_script.sh,它会按预期运行.
本地和远程主机的系统规格和R版本是相同的:
> R.version
_
platform x86_64-unknown-linux-gnu
arch x86_64
os linux-gnu
system x86_64, linux-gnu
status
major 3
minor 1.0
year 2014
month 04
day 10
svn rev 65387
language R
version.string R …Run Code Online (Sandbox Code Playgroud) 我在新的闪亮 R 中,但水平滚动有问题。这是我的代码。
output$sbirx.view <- DT::renderDataTable(
{
dataset.filter()
}, options = list(
searching = TRUE,
autoWidth=TRUE,
paging=FALSE,
scrollX=TRUE,
scrollY="500px",
scrollCollapse = TRUE,
fixedHeader=TRUE,
fixedColumns=list(leftColumns = 2, rightColumns = 0,
heightMatch = 'none')
),
rownames=FALSE,
class = 'cell-border stripe',
extensions = c('FixedColumns',"FixedHeader")
Run Code Online (Sandbox Code Playgroud)
)
数据有 79 列,我可以选择要显示的列数。前 2 个 leftcolumns(DISEASE 和 PRODUCT)应该是固定的,如果你只显示 3 列,表格看起来像这样。但是,如果我选择适合屏幕的几列,则没有问题。
疾病产品 疾病产品 2010-11 疾病1 产品1 疾病1 产品1 25,000 疾病1 产品2 疾病1 产品2 15,000 疾病1 产品3 疾病1 产品3 5,000
有没有办法使用任何选项来解决这个问题?
感谢您的时间和帮助。