小编Vin*_*nci的帖子

如何从np直方图计算熵

我有一个直方图的例子:

mu1 = 10, sigma1 = 10
s1 = np.random.normal(mu1, sigma1, 100000)
Run Code Online (Sandbox Code Playgroud)

并计算

hist1 = np.histogram(s1, bins=50, range=(-10,10), density=True)
for i in hist1[0]:
    ent = -sum(i * log(abs(i)))
print (ent)
Run Code Online (Sandbox Code Playgroud)

现在我想从给定的直方图数组中找到熵,但由于np.histogram返回两个数组,我在计算熵方面遇到了麻烦.我怎样才能调用第一个np.histogram数组并计算熵?即使上面的代码是正确的,我也会得到熵的数学域错误.:(

**编辑:当Mu = 0时如何找到熵?和log(0)产生数学域错误?


所以我想写的实际代码是:

mu1, sigma1 = 0, 1
mu2, sigma2 = 10, 1
s1 = np.random.normal(mu1, sigma1, 100000)
s2 = np.random.normal(mu2, sigma2, 100000)

hist1 = np.histogram(s1, bins=100, range=(-20,20), density=True)
data1 = hist1[0]
ent1 = -(data1*np.log(np.abs(data1))).sum() 

hist2 = np.histogram(s2, bins=100, range=(-20,20), density=True)
data2 = hist2[0]
ent2 = -(data2*np.log(np.abs(data2))).sum() 
Run Code Online (Sandbox Code Playgroud)

到目前为止,第一个示例ent1将产生nan,而第二个示例ent2产生数学域错误:(

python numpy entropy histogram

4
推荐指数
1
解决办法
3133
查看次数

在 python 中打开文件时,我不断收到“标识符中的无效字符”

所以我试图用以下代码打开一个文件:

open(‘datapickle’, ‘rb’) as f: 
  names, F, approximate = pickle.load(f)
Run Code Online (Sandbox Code Playgroud)

但是,我不断得到: 在此处输入图片说明

我能做些什么来解决这个问题?请帮忙 :(

python pickle

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

Github Markdown 锚只链接到页面顶部

我不确定这个地方是否适合询问 Github wiki 降价问题。如果是这样,我会删除它。

所以,我正在为存储库编写一个 wiki 页面,并且我一直在尝试添加锚点。但是,锚点似乎只会导致重新加载页面,或者导致页面顶部。我很确定我的语法是正确的,但我不知道出了什么问题。

我有这样的例子:

链接为: <a name="#dinpanel"></a>

然后我访问它: [text to show](myrepositoryweburl#dinpanel) 另外,如果我只是在 URL 中输入“myrepositoryweburl#dinpanel”,它仍然会加载到页面顶部。我想知道 Markdown 发生了什么。任何帮助,将不胜感激!

anchor markdown github

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

如何总结数组列表中的每个元素?

有点写出代码.

例如,如果我有一个数组:

a = ([0, 0, 1, 2], [0, 1, 1, 0], [0, 0, 1, 0], [1, 0, 1, 3], [0, 1, 1, 3])
Run Code Online (Sandbox Code Playgroud)

如果我想添加每个项目的第一个元素,

如同返回0 + 0 + 0 + 1 + 0,0 + 1 + 0,0 + 0的列表...

我写了代码:

def test(lst):
  sum = 0
  test_lst = [] 
  i = 0
  while i in range(0, 4):
    for j in range(0, len(lst)):
      sum += lst[j][i]
      test_lst.append(sum)
      i += 1 
 return test_lst
Run Code Online (Sandbox Code Playgroud)

我得到索引大小错误.我怎么能这样做?

python arrays list

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

标签 统计

python ×3

anchor ×1

arrays ×1

entropy ×1

github ×1

histogram ×1

list ×1

markdown ×1

numpy ×1

pickle ×1