我试图使用ggplot绘制概率密度图.我的问题是曲线下面积不等于1.建议表示赞赏.
示例图表...生成此图表的代码如下:Y轴看起来像是小尺寸箱柜的计数,而不是落入该箱柜的概率.这里的示例代码是我在编写此图表时提供的资源之一.

示例代码......其中大部分是数据......代码的关键位在底部......
library(ggplot2)
library(reshape)
library(plyr)
library(scales)
Date <- as.Date(
c("1976-01-16", "1976-02-15", "1976-03-16", "1976-04-15", "1976-05-16",
"1976-06-15", "1976-07-16", "1976-08-16", "1976-09-15", "1976-10-16",
"1976-11-15", "1976-12-16", "1977-01-16", "1977-02-14", "1977-03-16",
"1977-04-15", "1977-05-16", "1977-06-15", "1977-07-16", "1977-08-16",
"1977-09-15", "1977-10-16", "1977-11-15", "1977-12-16", "1978-01-16",
"1978-02-14", "1978-03-16", "1978-04-15", "1978-05-16", "1978-06-15",
"1978-07-16", "1978-08-16", "1978-09-15", "1978-10-16", "1978-11-15",
"1978-12-16", "1979-01-16", "1979-02-14", "1979-03-16", "1979-04-15",
"1979-05-16", "1979-06-15", "1979-07-16", "1979-08-16", "1979-09-15",
"1979-10-16", "1979-11-15", "1979-12-16", "1980-01-16", "1980-02-15",
"1980-03-16", "1980-04-15", "1980-05-16", "1980-06-15", "1980-07-16",
"1980-08-16", "1980-09-15", "1980-10-16", "1980-11-15", "1980-12-16",
"1981-01-16", "1981-02-14", "1981-03-16", "1981-04-15", "1981-05-16",
"1981-06-15", "1981-07-16", "1981-08-16", …Run Code Online (Sandbox Code Playgroud) 我正在尝试计算这两个向量之间的样本协方差.我用两个输入变量定义了一个函数.我不知道它是否正确?我的样本协方差公式也不会运行.任何人都可以帮我把它写在R?
xv = c(1., 5.5, 7.8, 4.2, -2.7, -5.4, 8.9)
yv = c(0.1, 1.5, 0.8, -4.2, 2.7, -9.4, -1.9)
sampleCov= function(x,y){
cov(xv,yv) = frac{sum_{i=1}^{n}(x_i-\mu_x)(y_i-\mu_y)}{n-1}].
return (Cov(xv,yv)
}
Run Code Online (Sandbox Code Playgroud) 我在R中实现DCC-GARCH时遇到一些问题.当我在R中运行以下代码时,我总是得到相同的错误消息:
UseMethod中的错误("收敛"):没有适用于"收敛"的方法应用于类"try-error"的对象
不幸的是我不知道如何解决这个问题......
install.packages("fGarch")
install.packages("rugarch")
install.packages("rmgarch")
library(fGarch)
library(rmgarch)
library(rugarch)
library(tseries)
library(zoo)
#Daten runterladen
ibm <- get.hist.quote(instrument = "DB", start = "2005-11-21",
quote = "AdjClose")
sys<- get.hist.quote(instrument = "^STOXX50E", start = "2005-11-21",
quote = "AdjClose")
#Returns
retibm<-diff(log(ibm))
retsys<-diff(log(sys))
# univariate normal GARCH(1,1) for each series
garch11.spec = ugarchspec(mean.model = list(armaOrder = c(0,0)),
variance.model = list(garchOrder = c(1,1),
model = "sGARCH"),
distribution.model = "norm")
# dcc specification - GARCH(1,1) for conditional correlations
dcc.garch11.spec = dccspec(uspec = multispec( replicate(2, garch11.spec) ),
dccOrder = …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个更优雅的解决方案:
phone_number <- function(x) {
x <- gsub("[\\() -]", "", x)
x <- gsub("^(.{3})(.{3})(.*)","\\1-\\2-\\3", x, perl = TRUE)
}
Run Code Online (Sandbox Code Playgroud)
这将采用这样的数据:
(123) 123-1234
123-123-1234
123 123-1234
Run Code Online (Sandbox Code Playgroud)
并产生这个:
123-123-1234
123-123-1234
123-123-1234
Run Code Online (Sandbox Code Playgroud) 我想运行 Wilcoxon 测试来将 3 个测试组(B、C 和 D)与对照组 (A) 进行比较
数据按以下格式组织:
Group CustomerID Value
A 23483 61
A 23484 54
A 23485 57
A 23486 59
A 23487 69
A 23488 69
B 23489 57
B 23490 53
B 23491 68
B 23492 59
B 23493 57
C 23494 58
C 23495 70
C 23496 69
C 23497 62
C 23498 53
D 23499 65
D 23500 62
D 23501 60
D 23502 62
D 23503 63
D 23504 68
Run Code Online (Sandbox Code Playgroud)
到目前为止我已经写了下面的代码 …
我可以使用绘图功能。可以使用plot获得pca结果。但不确定如何根据我的rownames(Sample)编号为1至90的数据点标记这些点
Sample<-read.table(file.choose(),header=F,sep="\t")
Sample.scaled<-data.frame(apply(Sample_2XY,2,scale))
Sample_scaled.2<-data.frame(t(na.omit(t(Sample_2XY.scaled))))
pca.Sample<-prcomp(Sample_2XY.scaled.2,retx=TRUE)
pdf("Sample_plot.pdf")
plot(pca.Sample$x)
dev.off()
Run Code Online (Sandbox Code Playgroud) 我有一个表达式:例如(map some-proc some-list)
,评估为'(#f #f #f).
我想检查此列表中的所有布尔值是否都为真.然而,
(and '(#f #f #f))回归'(#f #f #f),而我留意#f.
现在,如果我(apply and '(#f #f #f)),我得到错误:
and: bad syntax in: and在DrRacket环境中.这很令人困惑,因为Racket Reference提供的示例(apply + '(1 2 3))似乎与我的问题完全相同.
我做错了什么以及如何让我#f离开'(#f #f #f)?
问题是这样...我想更新我的数据库中的库存表,其中包括
Sale(ProductID,Quantity,Price)
Invlevel(ProductID,Quantity)
Run Code Online (Sandbox Code Playgroud)
我想使用触发器来进行此更新。我必须使用 2 个触发器(我认为)。1 在销售台上,类似于
CREATE TRIGGER `sale_AINS` AFTER INSERT ON sale FOR EACH ROW
begin
update Invlevel set quantity = Invlevel.quantity-"sale.quantity" where
Invlevel.ProductID = "sale.ProductID";
END
Run Code Online (Sandbox Code Playgroud)
有了这个触发器,当销售出现时,我想调整销售所涉及的产品的库存水平。然而,即使这个触发器没有错误并且当我插入销售表时运行正常,它也不会在 Invlevel 表上进行任何更改,我不知道为什么(:@)。
此外,我在 Invlevel 表中创建了触发器,如下所示
CREATE TRIGGER `invlevel_AUPD` after UPDATE on invlevel FOR EACH ROW
if invlevel.quantity < 20
begin
insert into orders
(select productid,amount from reorder where reorder.productid = invlevel.productid )
end
Run Code Online (Sandbox Code Playgroud)
*(订单、重新排序是其他表)
它对我说我有语法错误,我不知道它是什么,而且即使我找到它,我什至无法检查逻辑,因为另一个触发器甚至无法工作......对此有任何想法或帮助真的很有帮助。
我在R中有60个矩阵,命名为mat1,mat2 .... mat60,我想用rbind将它们组合成一个大矩阵.我知道我可以写类似的东西
matList <- list(mat1, mat2, ... mat60)
rbind(matList)
Run Code Online (Sandbox Code Playgroud)
但这似乎是一个非常愚蠢的解决方案 知道如何简化流程吗?
我有一个字符串列表,对于每个字符串,我需要在最后一个斜杠后用"_"替换所有空格.这是一个可重复的最小例子.
my_list <- list("abc/as 345/as df.pdf", "adf3344/aer4 ffsd.doc", "abc/3455/dfr.xls", "abc/3455/dfr serf_dff.xls", "abc/34 5 5/dfr 345 dsdf 334.pdf")
Run Code Online (Sandbox Code Playgroud)
更换后,结果应该是:
list("abc/as 345/as_df.pdf", "adf3344/aer4_ffsd.doc", "abc/3455/dfr.xls", "abc/3455/dfr_serf_dff.xls", "abc/34 5 5/dfr_345_dsdf_334.pdf")
Run Code Online (Sandbox Code Playgroud)
我想在最后一个斜杠后使用正则表达式匹配文本,然后将""替换为"_",但没有找到实现它的方法.它将是这样的:
gsub(pattern, "_", my_list),在哪种模式中将是一个正则表达式:在最后一个斜杠之后匹配每个空格(列表的每个元素中至少有一个斜杠).