我一直在努力使分布适合我在R中拥有的样本数据。我一直在考虑使用fitdist和fitdistr函数,但是我似乎都遇到了问题。
快速背景;我的代码的输出应该是最合适的分布(从分布列表中)到提供的带有参数的数据。这需要在没有人工干预的情况下发生,因此比较图形不是一种选择。我当时想我可以使每个分布适合数据,从卡方检验中得出p值,然后找到p值最高的分布。我已经在对样本数据进行正态分布方面取得了一些成功,但是当我尝试拟合更复杂的内容(如代码中所示的gamma分布)时,我会遇到各种错误。我究竟做错了什么?
library(fitdistrplus)
require(MASS)
set.seed(1)
testData <- rnorm(1000)
distlist <- c("norm","unif","exp")
(z <- fitdist(testData,"gamma",start=list(rate=0.1),fix.arg=list(shape=4)))
Run Code Online (Sandbox Code Playgroud)
我得到的错误示例是:
[1]“ optim中的错误(par = vstart,fn = fnobj,fix.arg = fix.arg,obs = data,:\ n'vmmin'中的初始值不是有限的\ n” attr(,“ class”)
和
fitdist(testData,“ gamma”,start = list(rate = 0.1),fix.arg = list(shape = 4))中的错误:函数mle无法估计参数,错误代码为100
我知道我可能错误地实现了fitdist函数,但是似乎找不到能够适应我的代码目标的简单示例。有人可以帮忙吗?
我正在使用Java编写项目,并使用以下代码创建了一个类:
public class VehInfo {
private int[][] traffic = new int[20][150];
private int mintime = 0;
private int numvehicles = 1;
private int[] vehiclecode = new int[5];
public VehInfo(int[][] traffic, int mintime, int numvehicles, int[] vehiclecode) {
this.traffic = traffic;
this.mintime = mintime;
this.numvehicles = numvehicles;
this.vehiclecode = vehiclecode;
}
}
Run Code Online (Sandbox Code Playgroud)
我想使用以下代码创建此类的新实例
VehInfo vehinfo = new VehInfo(new int[20][150], new int, new int, new int[5]);
Run Code Online (Sandbox Code Playgroud)
但是,Netbeans告诉我:
required:(int [] [],int,int,int [])
found:(int [] [],int [],int [],int [])
我错过了什么?我显然没有将这些变量初始化为int [],那么它们为什么会这样被拾取呢?
我正在用Java编写模拟,但是没有很多使用Graphics对象的经验.我写了一堂课
public class RoadNetwork extends JPanel {
BufferedImage truck1;
public RoadNetwork() throws IOException{
truck1 = ImageIO.read(getClass().getResource("Truck.png"));
}
protected void paintcomponent (Graphics g) {
super.paintComponent(g);
g.drawImage(car1, 0, 0, 100, 100, this);
}
}
Run Code Online (Sandbox Code Playgroud)
在我的main函数中,我按如下方式初始化类:
JFrame F1 = new JFrame();
F1.setLayout(new GridBagLayout());
GridBagConstraints constraints = new GridBagConstraints();
F1.setSize(1280,760);
RoadNetwork roadnetwork = new RoadNetwork();
roadnetwork.setPreferredSize(new Dimension(500,500));
roadnetwork.setVisible(true);
constraints.gridx = 40;
constraints.gridy = 40;
F1.add(roadnetwork, constraints);
F1.setVisible(true);
Run Code Online (Sandbox Code Playgroud)
但是,我只得到一个灰色的框架作为输出,没有图像.我已经通过将图像作为单独的ImageIcon添加到框架中来测试图像,这是有效的.但是,我似乎无法在框架中显示RoadNetwork类.我应该以某种方式调用paintcomponent函数吗?我究竟做错了什么?