小编Zel*_*elB的帖子

如何在Eclipse中查找抽象方法的实现位置?

我想找到一个抽象方法在哪里实现,哪个类?Eclipse中是否有一个链接,如调用层次结构/开放声明或类似的内容,它显示了实现方法的位置?

java eclipse hierarchy abstract

16
推荐指数
2
解决办法
1万
查看次数

如何使用keras获得模型的准确性?

拟合模型(运行了几个小时)之后,我想通过以下代码获得准确性:

train_loss=hist.history['loss']
val_loss=hist.history['val_loss']
train_acc=hist.history['acc']
val_acc=hist.history['val_acc']
xc=range(nb_epoch)
Run Code Online (Sandbox Code Playgroud)

训练模型的结果,但出现错误,这是由于我使用的方法过时所致。

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-233-081ed5e89aa4> in <module>()
      3 train_loss=hist.history['loss']
      4 val_loss=hist.history['val_loss']
----> 5 train_acc=hist.history['acc']
      6 val_acc=hist.history['val_acc']
      7 xc=range(nb_epoch)

KeyError: 'acc'
Run Code Online (Sandbox Code Playgroud)

在尝试读取精度之前,我用来拟合模型的代码如下:

hist = model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch,
            verbose=1, validation_data=(X_test, Y_test))


hist = model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch, 
            verbose=1, validation_split=0.2)
Run Code Online (Sandbox Code Playgroud)

运行时会产生以下输出:

Epoch 1/20
237/237 [==============================] - 104s 440ms/step - loss: 6.2802 - val_loss: 2.4209
    .....
    .....
    .....
Epoch 19/20
    189/189 [==============================] - 91s 480ms/step - loss: 0.0590 - val_loss: 0.2193
    Epoch 20/20 …
Run Code Online (Sandbox Code Playgroud)

python machine-learning deep-learning keras tensorflow

8
推荐指数
3
解决办法
1万
查看次数

如何更改子图刻度标签的旋转

我想更改 xticks 的旋转,但我以 x 和 yticks 旋转结束。我怎样才能只旋转xticks?

这是我的代码:

# Plot mit Sidestepped 0/1

sns.set(style="darkgrid")

fig, ax = plt.subplots(1,2, figsize=(14,5))

for i in range(len(ax)):
    ax[i].tick_params(labelsize=15)
    ax[i].set_xlabel('label', fontsize=17, position=(.5,20))
    ax[i].set_ylabel('label', fontsize=17)

sns.countplot(x="page_name", hue="successful", data=mainDf, ax=ax[0]); 
sns.countplot(x="industry", hue="successful", data=mainDf, ax=ax[1]);

fig.suptitle('Categorical Features Count', position=(.5,1.1), fontsize=20)
ax[0].set_title('Type by Industry', fontsize=18)
ax[0].set_xlabel('Industry')
ax[0].tick_params(rotation=50)
ax[1].set_title('Success by Industry',  fontsize=18)
ax[1].set_xlabel('Industry')
fig.tight_layout()

fig.show()
Run Code Online (Sandbox Code Playgroud)

这是我得到的(x 但不幸的是 yticks 也旋转了!只看 ax[0] 处的左图!我想只旋转左图的 xticks!):

阴谋

python matplotlib subplot

8
推荐指数
1
解决办法
4851
查看次数

是否可以在同一端口上仅使用1个UDPSocket进行发送/接收?

我正在尝试发送一个DatagramPacket,然后必须等待来自服务器的Acknowlegment,以便我知道是否必须重新发送相同的数据包或发送下一个数据包.

我在客户端使用相同的套接字,发送数据包并接收确认(ack),在服务器端使用相同的,另一个套接字用于接收数据包,然后将确认发送给客户..

第一个问题是客户端正在发送数据包,服务器正在接收它,然后将确认发送给客户端,但客户端在接收确认数据包时阻塞.

我正在制作一些System.out.println以确定问题所在,但我无法找到解决此问题的方法.

第二个问题是服务器仍然总是接收数据,并且不要等待客户端发送内容,我检查了因为我得到了那些行(例如"得到长度为xxx的数据包""ack与ackNr yyy一起发送"... "虽然客户端在发送第一个数据包后仍在阻塞,但始终打印在服务器端,因为它正在等待未收到的确认!

这是CLIENT的代码:

package blatt7;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketTimeoutException;
import java.net.UnknownHostException;
import java.nio.ByteBuffer;
import java.util.zip.CRC32;




public class FileSender { 


String zielRechner;
String filePath;
InetAddress host;
File file;
FileInputStream fis;
int readLength;
int sequenceNr = 0;
int receivedSeqNr = 1;
static int port = 7777;
int packetNr = 0;
byte[] packet = new byte[1216];
byte[] data = new byte[1200];
byte[] header = new byte[16]; …
Run Code Online (Sandbox Code Playgroud)

java networking udp datagram packet

6
推荐指数
1
解决办法
6592
查看次数

如何使用预定义的概率分布生成随机数?

我想在python(using numpy)中实现一个函数,它接受一个数学函数(p(x) = e^(-x)例如下面的例子)作为输入并生成随机数,这些随机数根据数学函数的概率分布进行分配.我需要绘制它们,所以我们可以看到分布.

实际上我需要一个随机数生成器函数来完成以下两个数学函数作为输入,但如果它可以采取其他函数,为什么不:

1)p(x) = e^(-x)
2)g(x) = (1/sqrt(2*pi)) * e^(-(x^2)/2)

有没有人知道如何在python中这样做?

python numpy probability probability-density probability-distribution

5
推荐指数
2
解决办法
1341
查看次数

如何用Python中的Monte-Carlo方法计算10维球体积?

我试图用python计算10维球体的体积,但我的计算不起作用.

这是我的代码:

def nSphereVolume(dim,iter):
    i = 0
    j = 0
    r = 0
    total0 = 0
    total1 = 0

    while (i < iter):
        total0 = 0;
        while (j < dim):
            r = 2.0*np.random.uniform(0,1,iter) - 1.0

            total0 += r*r
            j += 1

        if (total0 < 1):
            total1 += 1
        i += 1

    return np.pow(2.0,dim)*(total1/iter)

nSphereVolume(10,1000)
Run Code Online (Sandbox Code Playgroud)

这里的错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-253-44104dc9a692> in <module>()
     20     return np.pow(2.0,dim)*(total1/iter)
     21 
---> 22 nSphereVolume(10,1000)

<ipython-input-253-44104dc9a692> in nSphereVolume(dim, iter)
     14             j += 1 …
Run Code Online (Sandbox Code Playgroud)

python math numpy montecarlo

5
推荐指数
1
解决办法
627
查看次数

JAVA HashMap 2D,无法获得制作2D HashMap的正确方法,我的意思是将HashMap转换为另一个HashMap

我想建立一个学生姓名和科目的董事会,每个学生都有一个成绩(或者不是......他可以离开考试而不写,然后他的案子将是空的).我想只使用HashMaps.我的意思是,它会是这样的:

HashMap<String,HashMap<String,String>> bigBoard = 
    new HashMap<String,HashMap<String,String>>();
Run Code Online (Sandbox Code Playgroud)

但我认为,我没有正确的想法,因为对于每个主题,将有许多等级(值),所以这是不可能的.我是否必须为每个学生制作地图?与他的主题?但是输出表将不会被安排.你有一个主张吗?我想要一张看起来像这样的桌子.

Column-Key ?
  Rowkey?      Mathematics         Physics       Finance

Daniel Dolter         1.3           3.7 

Micky Mouse                                      5

Minnie Mouse                        1.7          n/a

Dagobert Duck         4.0                        1.0
Run Code Online (Sandbox Code Playgroud)

(我会使用所有的键/值作为字符串,它会更简单.)

在我们的类实现之后(例如class-name是String2D),我们应该像这样使用它.

public static void main(String[] args) {

    String2D map2D = new String2D(); 
    map2D.put("Daniel Doster", "Practical Mathematics", "1.3"); 
    map2D.put("Daniel Doster", "IT Systeme", "3.7"); 
    map2D.put("Micky Mouse", "Finance", "5");
    map2D.put("Minnie Mouse", "IT Systeme", "1.7");
    map2D.put("Minnie Mouse", "Finance", "n/a");
    map2D.put("Dagobert Duck", "Practical Mathematics", "4.0");
    map2D.put("Dagobert Duck", "Finance", "1.0");
    System.out.println(map2D); 
} 
Run Code Online (Sandbox Code Playgroud)

不会看到"HashMap"..并且不允许使用数组

java nested hashmap

3
推荐指数
1
解决办法
1万
查看次数

如何在 Haskell 中打印 n 次相同的字符

我想打印一个字符下划线 n 次,n 是 Haskell 中字符串的长度。

我该怎么做?

我的字符串是:“Available Chars (x)”,我想在那个句子下划一个字符,它的长度应该与“Available Chars (x)”完全相同。但是 x 是一个整数,所以它可以是“1”或“10”或“1000”等等。所以长度是可变的。我得到了长度,但我不知道如何打印该字符,只要字符串是...

string haskell

3
推荐指数
1
解决办法
9067
查看次数

如何实现自适应步长 Runge-Kutta Cash-Karp?

尝试实现自适应步长 Runge-Kutta Cash-Karp 但失败并出现此错误:

home/anaconda/lib/python3.6/site-packages/ipykernel_launcher.py:15: RuntimeWarning: divide by zero encountered in double_scalars from ipykernel import kernelapp as app
Run Code Online (Sandbox Code Playgroud)

我试图解决的 ODE(并在下面的示例中使用,从高阶转换为一阶 ODE 系统)如下:

要在两个一阶 ODE 系统中转换的二阶 ODE

这是我正在使用的实现:

def rkck(f, x, y, h, tol):
    #xn = x + h
    err = 2 * tol
    while (err > tol):
        xn = x + h
        k1 = h*f(x,y)
        k2 = h*f(x+(1/5)*h,y+((1/5)*k1)) 
        k3 = h*f(x+(3/10)*h,y+((3/40)*k1)+((9/40)*k2))
        k4 = h*f(x+(3/5)*h,y+((3/10)*k1)-((9/10)*k2)+((6/5)*k3))
        k5 = h*f(x+(1/1)*h,y-((11/54)*k1)+((5/2)*k2)-((70/27)*k3)+((35/27)*k4))
        k6 = h*f(x+(7/8)*h,y+((1631/55296)*k1)+((175/512)*k2)+((575/13824)*k3)+((44275/110592)*k4)+((253/4096)*k5))
        yn4 = y + ((37/378)*k1)+((250/621)*k3)+((125/594)*k4)+((512/1771)*k6)
        yn5 = y + ((2825/27648)*k1)+((18575/48384)*k3)+((13525/55296)*k4)+((277/14336)*k5)+((1/4)*k6)
        err = yn4[-1]-yn5[-1]
        if …
Run Code Online (Sandbox Code Playgroud)

math mathematical-optimization numerical-methods ode runge-kutta

3
推荐指数
1
解决办法
1103
查看次数

如何知道我们是否收到了带有 DatagramPacket 的东西?

我正在实施一个客户端 - 服务器程序,并希望我的客户端在没有来自服务器的 ACK-Answer 等待 5 秒后,发回相同的数据包......

我是这样做的,所以请告诉我是否可以。

dp = new DatagramPacket(packet , packet.length , host , port);
        sock.send(dp);
        time = System.currentTimeMillis();
        while ((System.currentTimeMillis() - time < 5000) && ack_dp.getLength() == 0) {
            sock.receive(ack_dp);
        }

        if (ack_dp.getLength() == 0)
            sock.send(dp);
Run Code Online (Sandbox Code Playgroud)

所以我的程序将等待 5 秒的 ACK,如果他没有收到任何东西,他将重新发送相同的数据包。我用数据包长度检查他是否收到了一个确认..如果它保持为 0,那么他没有收到任何东西..如果它会比 0 长,那么在 while 序列之外并发送一个新的数据包..( ps: ack_dp 是 2bytes)

java sockets networking udp datagram

2
推荐指数
1
解决办法
3566
查看次数