我caret以前训练过一个rpart模型.
trainIndex <- createDataPartition(d$Happiness, p=.8, list=FALSE)
dtrain <- d[trainIndex, ]
dtest <- d[-trainIndex, ]
fitControl <- trainControl(## 10-fold CV
method = "repeatedcv", number=10, repeats=10)
fitRpart <- train(Happiness ~ ., data=dtrain, method="rpart",
trControl = fitControl)
testRpart <- predict(fitRpart, newdata=dtest)
Run Code Online (Sandbox Code Playgroud)
dtest包含1296个观测值,所以我希望testRpart产生一个长度为1296的向量.相反,它长1077,即219短.
当我在前220行上运行预测时dtest,我得到的预测结果为1,因此它始终为219短.
有关为什么会出现这种情况的任何解释,以及我可以做些什么来获得输入的一致输出?
编辑: d可以从这里加载以重现上述内容.
由于缺少更好的名称,我想在R中创建一个连续的1-d热图,即这个问题的1-d版本
玩具数据使用:
df <- data.frame(x=1:20,
freq=c(8, 7, 5, 6, 10, 4, 2, 9, 3, 10, 1, 8, 4, 7, 2, 6, 7, 6, 9, 9))
Run Code Online (Sandbox Code Playgroud)
我可以使用创建粗网格输出
ggplot(data=df, aes(x=x, y=1)) + geom_tile(aes(fill=freq))
Run Code Online (Sandbox Code Playgroud)
但与其他问题类似,我希望有一个平滑的颜色过渡.不幸的是,我不太清楚2-d的答案是否足以让它适应1-d.
我创建了以下数据框摘要 dplyr
structure(list(maxrep = c(7L, 7L, 8L, 8L, 9L, 9L, 10L, 10L, 11L,
11L, 12L, 12L, 13L, 13L, 14L, 14L, 15L, 15L, 16L, 16L, 17L, 17L,
18L, 18L, 19L, 19L, 20L, 20L, 21L, 21L, 22L, 22L, 23L, 23L, 24L,
24L, 26L, 26L), div = structure(c(1L, 2L, 1L, 2L, 1L, 2L, 1L,
2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L,
2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, …Run Code Online (Sandbox Code Playgroud) 我想对属于除行的组以外的组的行的值进行求和.例如,使用此示例数据
> df <- data.frame(id=1:5, group=c("A", "A", "B", "B", "A"), val=seq(9, 1, -2))
> df
id group val
1 1 A 9
2 2 A 7
3 3 B 5
4 4 B 3
5 5 A 1
Run Code Online (Sandbox Code Playgroud)
dplyr按小组总结
> df %>% group_by(group) %>% summarize(sumval = sum(val))
Source: local data frame [2 x 2]
group sumval
(fctr) (dbl)
1 A 17
2 B 8
Run Code Online (Sandbox Code Playgroud)
我想要的是属于A组的行使用sumval非A组的值.即最终结果是
id group val notval
1 1 A 9 8
2 2 A …Run Code Online (Sandbox Code Playgroud) 当我安装软件包时,先于实际软件包安装必备软件包.我收到"unable to move temporary installation"所有必备软件包的警告,但没有针对实际软件包的警告.但是加载时包会出错.
例如,当我install.packages("mlr"),它安装了所有依赖项,我得到了各种警告,如下所示:
package ‘BBmisc’ successfully unpacked and MD5 sums checked
Warning in install.packages :
unable to move temporary installation ‘D:\Documents\R\win-library\3.2\filef3811142c73\BBmisc’ to ‘D:\Documents\R\win-library\3.2\BBmisc’
Run Code Online (Sandbox Code Playgroud)
我忽略了它,因为它只是一个警告.不幸的是library(mlr)给了我Error: package ‘BBmisc’ required by ‘mlr’ could not be found,所以我毕竟不能忽视它.
install.packages("BBmisc") 直接没有产生警告.
是什么赋予了?除了自己安装所有依赖项之外,我该如何解决这个问题?
如果需要会话信息:
> sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_Singapore.1252 LC_CTYPE=English_Singapore.1252
[3] LC_MONETARY=English_Singapore.1252 LC_NUMERIC=C
[5] LC_TIME=English_Singapore.1252
attached base packages:
[1] …Run Code Online (Sandbox Code Playgroud) 我知道如何使用两种不同的Y轴测量来创建双轴图表.有没有办法让我使用相同的度量创建双轴图表,但在双轴上的两个不同范围?例如,我有一个包含收入的列,我想创建一个双轴图表,其中一个轴有2013年的收入,另一个轴有2014年的收入.
编辑:我的目标是在同一图表上创建2013年收入的折线图和2014年收入的条形图.下面的图片是我为每个月和每月累计运行的2013财年和2014财年值所做的工作.

现在我想做的是将两个FY13条形图叠加在相应的FY14条形图上的折线图上.
我还附加了我的Tableau工作簿,该工作簿在第一个选项卡中创建了上面的图表.
https://dl.dropboxusercontent.com/u/5548442/StackOverflow%20attachments/FY13%20vs%20FY14.twbx
假设我有一个太宽的图表,而我想把它切成两半并将其显示为两个图表,一个使用x刻度范围的前半部分,第二个使用后半部分.有一个简单的方法吗?
一个例子是ggplot(diamonds, aes(x=price)) + geom_bar(),我想要的价格范围是0到10000,而另一个价格在10000到20000之间.它应该看起来像facet_wrapped,但这里没有不同的变量.
编辑:在我的实际图表(不使用diamonds)中,我也使用coord_flip(),这显然会导致一些其他有效尝试的问题.我希望得到一个也可以使用的答案coord_flip()(即:左边是一个图表,右边是另一个图表,而不是垂直堆叠)
我试图在R中创建一个序数回归树rpart,其预测变量主要是序数数据,存储factor在R中.
当我使用创建树时rpart,我得到这样的东西:

其中值是因子值(例如A170,标签的范围从-5到10).
然而,当我使用caret来train使用数据rpart,当我解压的最终模型,树不再具有有序预测.请参阅下面的示例输出树

如上所示,似乎序数变量A170现在已经转换为多个虚拟分类值,即A17010在第二个树中是虚拟A170值10.
那么,在使用caret包装树时,是否可以保留序数变量而不是将因子变量转换为多个二元指示变量?
我有一个在 RStudio 中运行良好的 R 脚本。我正在尝试使用 RScript.exe 安排它在 Windows 任务计划程序中定期运行。它失败了。
然后我尝试从命令行运行它并注意到下面的错误。
D:\development\projects\SSCDAPOC\trunk\src\scripts>"C:\Program Files\R\R-3.2.2\bin\x64\Rscript.exe" batch_read_rss_selected.R
Loading required package: xml2
Error in as.vector(x, "list") :
cannot coerce type 'environment' to vector of type 'list'
Calls: do.call ... <Anonymous> -> lapply -> as.list -> as.list.default
Execution halted
Run Code Online (Sandbox Code Playgroud)
当我直接在 RStudio 中获取相同的脚本时,它工作得非常好。
关于如何调查和解决此问题有什么建议吗?
使用时的 R 会话信息如下:
> sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_Singapore.1252 LC_CTYPE=English_Singapore.1252
[3] LC_MONETARY=English_Singapore.1252 LC_NUMERIC=C
[5] LC_TIME=English_Singapore.1252
attached base …Run Code Online (Sandbox Code Playgroud) R有许多标准符号/形状,可用作R折线图中数据点的标记(如果不明确,请参阅http://www.cookbook-r.com/Graphs/Shapes_and_line_types/我的意思) .
我想要做的是使用我自己的自定义图标(例如苹果,香蕉,樱桃等的GIF)代替标准形状.
我怎么能在R?不必是原生R图形,我对包裹ggplot2等开放
我的预期用途是在折线图中,标记也会出现在图例上.
这里的答案(通过ggplot2中的图形标记图形)通过直接绘制图像来解决类似的问题,就像它们是独立的项目一样,因此并不真正与数据/图例相关联.