小编Ser*_*ity的帖子

从numpy数组创建字典

我有一个numpy数组,我想从数组创建一个字典.

更具体地说,我想要一个具有与行对应的键的字典,因此键1应该是第1行的总和.

s1是我的数组,我知道如何得到行的总和但是做numpy.sum(s1[i]),我是行.

我正在考虑创建一个循环,我可以计算行的总和,然后将其添加到字典,但我是编程的新手,所以我不知道如何做到这一点,或者是否可能.

有人有什么建议吗?

编辑

我使用范围函数创建了键值.然后压缩键和阵列.

mydict = dict(zip(keys, s1))
Run Code Online (Sandbox Code Playgroud)

python arrays dictionary numpy

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

Spark2-LogisticRegression训练已完成,但结果未收敛,因为:行搜索失败

在训练Logistic回归分类器时,出现以下错误:

2016-08-16 20:50:23,833 ERROR [main] optimize.LBFGS (Logger.scala:error(27)) - Failure! Resetting history: breeze.optimize.FirstOrderException: Line search zoom failed
2016-08-16 20:50:24,009 INFO  [main] optimize.StrongWolfeLineSearch (Logger.scala:info(11)) - Line search t: 0.9 fval: 0.4515497761131565 rhs: 0.45154977611314895 cdd: 3.4166889881493167E-16
Run Code Online (Sandbox Code Playgroud)

然后程序继续执行一段时间,但随后遇到此错误:

2016-08-16 20:50:24,365 ERROR [main] optimize.LBFGS (Logger.scala:error(27)) - Failure again! Giving up and returning. Maybe the objective is just poorly behaved?
2016-08-16 20:50:24,367 WARN  [main] classification.LogisticRegression (Logging.scala:logWarning(66)) - LogisticRegression training finished but the result is not converged because: line search failed!
2016-08-16 20:50:27,143 INFO  [main] optimize.StrongWolfeLineSearch (Logger.scala:info(11)) …
Run Code Online (Sandbox Code Playgroud)

scala logistic-regression apache-spark apache-spark-mllib

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

matplotlib 在带有 TkAgg 后端的 macOS 上的 plt.show() 中崩溃

该脚本在 for 循环中运行,每次迭代调用plt.plot()和循环调用之后plt.show()- 并崩溃(屏幕冻结并需要强制重启)。在崩溃之前或之后没有显示错误消息。IMO,这不是内存问题。

如果我从 shell / PyCharm IDE 运行脚本也是如此。

有趣的点

  1. 我过去曾在同一台 Mac 和相同配置上多次运行此脚本。唯一可能相关的是我几天前更新了我的操作系统。
  2. 当我在调试模式下运行脚本时,停止点位于“plt.show()”中 - 并且没有崩溃并且脚本结束而不显示情节。
  3. 运行脚本时,会打开一个带有“python”-ish 图标的小窗口。当我按下它时什么也没有发生。

我已经尝试在此处此处此处跟踪许多其他报告的问题,但均未成功。

MacOS 版本:Mojave 10.14.6

我无法共享代码和数据,但为了轻松重现问题 - 尝试运行以下简单代码:

>>> import matplotlib
>>> matplotlib.use("TkAgg")
>>> from matplotlib import pyplot as plt
>>> plt.plot(range(10))
[<matplotlib.lines.Line2D object at 0x1141069e8>]
>>> plt.show()
Run Code Online (Sandbox Code Playgroud)

Mac 崩溃(冻结并需要重新启动)。

套餐:

matplotlib 3.0.3 py37h54f8f79_0
numpy的1.16.2 py37hacdab7b_0
numpy的基1.16.2 py37h6575580_0
的PyQt 5.9.2 py37h655552a_2
pyqt5 5.13.0 pypi_0的PyPI scikit学习0.20.3 py37h27c97d8_0
SciPy的1.2.1 py37h1410ff5_0

*conda info*

     active …
Run Code Online (Sandbox Code Playgroud)

python macos matplotlib anaconda

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