我有一个有关使用python的最近邻居算法的作业。我在纯Python中有一个给定的代码,其中包含一个循环。我必须仅使用numpy且没有循环来重写和配置该功能。
我有一个未标记的点u(需要分类),距离函数和训练集(X,Y)。我必须编写的函数应该返回到u的距离最小的点的标签。
这是我必须重写的用纯Python编写的函数:
FATAL EXCEPTION: main
Process: com.example.app, PID: XXXXX
java.lang.NoClassDefFoundError: com.example.app.MainActivity$19
at com.example.app.MainActivity.onCreate(MainActivity.java:421)
at android.app.Activity.performCreate(Activity.java)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java)
at android.app.ActivityThread.access$900(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java)
at android.os.Handler.dispatchMessage(Handler.java)
at android.os.Looper.loop(Looper.java)
at android.app.ActivityThread.main(ActivityThread.java)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
答案 0 :(得分:0)
在Python中重写循环的过程称为向量化。要解决此问题,通常必须使用索引来检索矩阵中的值。我建议您看一下以下问题: Vectorizing for loops NumPy vectorizing a for loop in numpy/scipy? vectorizing a for loop in python