在numpy数组中有效置换每列内容的最佳方法是什么?
我所拥有的是:
>>> arr = np.arange(16).reshape((4, 4))
>>> arr
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
>> # Shuffle each column independently to obtain something like
array([[ 8, 5, 10, 7],
[ 12, 1, 6, 3],
[ 4, 9, 14, 11],
[ 0, 13, 2, 15]])
Run Code Online (Sandbox Code Playgroud) 我正在编写一个简单的应用程序,Scala
它通过leveldbjni
库使用leveldb数据库.我的build.sbt
文件看起来像这样:
name := "Whatever"
version := "1.0"
scalaVersion := "2.10.2"
libraryDependencies ++= Seq(
"org.iq80.leveldb" % "leveldb-api" % "0.6",
"org.fusesource.leveldbjni" % "leveldbjni-all" % "1.7"
)
Run Code Online (Sandbox Code Playgroud)
Object
然后,An 负责创建数据库.不幸的是,如果我运行该程序,我会回到一个java.lang.UnsatisfiedLinkError
由引擎盖下利用的hawtjni
库引发的leveldbjni
.
也可以通过scala控制台轻松触发错误:
scala> import java.io.File
scala> import org.iq80.leveldb._
scala> import org.fusesource.leveldbjni.JniDBFactory._
scala> factory.open(new File("test"), new Options().createIfMissing(true))
java.lang.UnsatisfiedLinkError: org.fusesource.leveldbjni.internal.NativeOptions.init()V
at org.fusesource.leveldbjni.internal.NativeOptions.init(Native Method)
at org.fusesource.leveldbjni.internal.NativeOptions.<clinit>(NativeOptions.java:54)
at org.fusesource.leveldbjni.JniDBFactory$OptionsResourceHolder.init(JniDBFactory.java:98)
at org.fusesource.leveldbjni.JniDBFactory.open(JniDBFactory.java:167)
at .<init>(<console>:15)
...
scala> System getProperty "java.io.tmpdir"
res2: String = /var/folders/1l/wj6yg_wd15sg_gcql001wchm0000gn/T/
Run Code Online (Sandbox Code Playgroud)
我无法理解正在发生的事情,因为从jar文件中正确地提取了库,但由于某些原因它没有被加载.
$ file /var/folders/1l/wj6yg_wd15sg_gcql001wchm0000gn/T/lib* …
Run Code Online (Sandbox Code Playgroud) 我已经习惯sklearn
了训练一组SVM分类器(大多数是线性的,LinearSVM
但有些是使用SVC
rbf内核的类),我对结果非常满意.现在我需要将生产中的分类器导出到另一个使用Java的代码库中.我正在寻找可以在这个新代码库中轻松整合的可能库,这些库是在maven中发布的.
你有什么建议?
我有一个C++ cmake项目,它使用Boost Test进行单元测试.现在我想向cmake公开一系列bash脚本(用于集成测试).假设每个脚本在PASS或其他情况下返回0 !如果是FAILURE,则返回0 = 0 .我希望每次运行时都会执行每个脚本cmake test
.
获得此类行为的最简单,最快捷的方法是什么