小编Yas*_*Yas的帖子

从矩阵matlab中删除零列和行

我想从一个大矩阵中删除一些列和行.这些是列和具有全零值的行.MATLAB中是否有任何功能可以为您快速完成?我的矩阵很稀疏.我是这样做的:

 % To remove all zero columns from A
 ind = find(sum(A,1)==0) ;
 A(:,ind) = [] ;

 % To remove all zeros rows from A
 ind = find(sum(A,2)==0) ;
 A(ind,:) = [] ;
Run Code Online (Sandbox Code Playgroud)

有一行代码可能会很好,因为我可以反复做这种任务.谢谢

matlab

7
推荐指数
1
解决办法
2849
查看次数

如何在Python中使用virtualenv?

我打算为Python安装一个虚拟环境,以便将我的Python包分开.其中一个动机也是我的机器上有两个版本的Python(Ubuntu 14.04)共存.我有以下奇迹:

  1. 应该以什么顺序安装Python,PIP和virtualenv?它有关系吗?
  2. 完成后,如何在virtualenv下保留两个python版本?
  3. 假设我正在处理单独的项目,是否建议将每个项目保存在virtualenv创建的单独文件夹中?

我想知道专家的意见,以便以正确的方式和明智地做事.

python virtualenv

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

在python中使用pdist(),并使用您定义的自定义距离函数

我一直对scipy.spatial.distance.pdist(...)python的使用感兴趣,这对我一直在研究的一些应用程序来说非常有用和快速.

我需要使用成对距离函数,它是自定义的而不是由度量定义的标准默认距离度量.让我们举一个简单的例子,假设我不想使用euclidean距离函数,如下所示:

 Y = pdist(X, 'euclidean')
Run Code Online (Sandbox Code Playgroud)

相反,我想自己定义欧几里德函数并将其作为函数或参数传递给pdist().如何将euclidean距离函数的实现传递给此函数以获得完全相同的结果.这个问题的答案将帮助我以我感兴趣的方式使用该功能.

在MATLAB中,我知道如何在python中使用`pdist()',我还没有.谢谢你的建议

python distance scipy

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

规范化矩阵python的行

给定python中的二维数组,我想用以下规范标准化每一行:

  • 规范1:L_1
  • 规范2:L_2
  • Norm Inf:L_Inf

我已经启动了这段代码:

from numpy import linalg as LA
X = np.array([[1, 2, 3, 6],
              [4, 5, 6, 5],
              [1, 2, 5, 5],
              [4, 5,10,25],
              [5, 2,10,25]])

print X.shape
x = np.array([LA.norm(v,ord=1) for v in X])
print x
Run Code Online (Sandbox Code Playgroud)

输出:

   (5, 4)             # array dimension
   [12 20 13 44 42]   # L1 on each Row
Run Code Online (Sandbox Code Playgroud)

如何修改代码,使得不使用LOOP,我可以直接将矩阵的行规范化?(鉴于上面的标准值)

我试过了 :

 l1 = X.sum(axis=1)

 print l1
 print X/l1.reshape(5,1)

 [12 20 13 44 42]
 [[0 0 0 0]
 [0 …
Run Code Online (Sandbox Code Playgroud)

python numpy python-2.x

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

标签 统计

python ×3

distance ×1

matlab ×1

numpy ×1

python-2.x ×1

scipy ×1

virtualenv ×1