的本征库可以映射现有存储器到本征矩阵.
float array[3];
Map<Vector3f>(array, 3).fill(10);
int data[4] = 1, 2, 3, 4;
Matrix2i mat2x2(data);
MatrixXi mat2x2 = Map<Matrix2i>(data);
MatrixXi mat2x2 = Map<MatrixXi>(data, 2, 2);
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何从特征矩阵(例如Matrix3f m)得到c数组(例如float [] a)?什么是特征矩阵的真实布局?真实数据是否存储在普通c数组中?
有什么区别
import numpy as np
np.dot(a,b)
Run Code Online (Sandbox Code Playgroud)
和
import numpy as np
np.inner(a,b)
Run Code Online (Sandbox Code Playgroud)
我试过的所有例子都返回了相同的结果.维基百科有两篇相同的文章?!在它的描述中inner()说,它的行为在更高的维度上是不同的,但我不能产生任何不同的输出.我应该使用哪一个?
>>> ex=np.arange(30)
>>> e=np.reshape(ex,[3,10])
>>> e
array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19],
[20, 21, 22, 23, 24, 25, 26, 27, 28, 29]])
>>> e>15
array([[False, False, False, False, False, False, False, False, False,
False],
[False, False, False, False, False, False, True, True, True,
True],
[ True, True, True, True, True, True, True, True, True,
True]], dtype=bool)
Run Code Online (Sandbox Code Playgroud)
我需要找到具有true或行的行,e其值大于15.我可以使用for循环进行迭代,但是,我想知道numpy是否可以更有效地执行此操作?
我想在我写的文章中提出一个距离矩阵,我正在为它寻找良好的可视化.
到目前为止,我遇到了气球图(我在这里使用它,但我不认为它会在这种情况下起作用),热图(这是一个很好的例子,但它们不允许在表中显示数字,正确我,如果我错了.也许一半的颜色和一半的数字将是很酷的)和最后的相关椭圆图(这里是一些代码和示例 - 使用一个形状很酷,但我不知道如何使用它这里).
还有各种聚类方法,但它们会聚合数据(这不是我想要的),而我想要的是呈现所有数据.
示例数据:
nba <- read.csv("http://datasets.flowingdata.com/ppg2008.csv")
dist(nba[1:20, -1], )
Run Code Online (Sandbox Code Playgroud)
我很开心.
我有一个包含49个数值的向量.我希望有一个7x7数字矩阵.
我可以使用某种方便的自动转换语句,还是必须将7个单独的列分配正确的向量子集分配给新的矩阵?我希望有一些类似于oposite的东西c(myMatrix),当然可以选择给出我想要的行数和/或列数.
我希望找到矩阵的最大元素值及其位置(矩阵中的行和列id).
我使用以下函数返回矩阵的行和列.
这似乎是一个糟糕的黑客 - 这是我可能错过本机方法的事情.是否有更好/ 更多的R方式?
这是我的功能:
matxMax <- function(mtx)
{
colmn <- which(mtx == max(mtx)) %/% nrow(mtx) + 1
row <- which(mtx == max(mtx)) %% nrow(mtx)
return( matrix(c(row, colmn), 1))
}
Run Code Online (Sandbox Code Playgroud)
我用的如下:
mm <- matrix(rnorm(100), 10, 10)
maxCords <- matxMax(mm)
mm[maxCords]
Run Code Online (Sandbox Code Playgroud) 我正在尝试输入2D矩阵的尺寸.然后使用用户输入填写此矩阵.我尝试这样做的方法是通过矢量(矢量矢量).但是每当我尝试读入数据并将其附加到矩阵时,我就遇到了一些错误.
//cin>>CC; cin>>RR; already done
vector<vector<int> > matrix;
for(int i = 0; i<RR; i++)
{
for(int j = 0; j<CC; j++)
{
cout<<"Enter the number for Matrix 1";
cin>>matrix[i][j];
}
}
Run Code Online (Sandbox Code Playgroud)
每当我尝试这样做时,它会给我一个超出范围错误的下标.有什么建议?
我想使用numpy来计算逆.但我收到一个错误:
'numpy.ndarry' object has no attribute I
Run Code Online (Sandbox Code Playgroud)
要计算numpy中矩阵的逆,比如矩阵M,它应该简单:
print M.I
这是代码:
x = numpy.empty((3,3), dtype=int)
for comb in combinations_with_replacement(range(10), 9):
x.flat[:] = comb
print x.I
Run Code Online (Sandbox Code Playgroud)
我假设发生此错误是因为x现在是平的,因此' I'命令不兼容.有没有解决这个问题?
我的目标是打印每个可能的数值矩阵组合的INVERSE MATRIX.
我正在使用scikit-learn将文本文档(22000)分类为100个类.我使用scikit-learn的混淆矩阵方法来计算混淆矩阵.
model1 = LogisticRegression()
model1 = model1.fit(matrix, labels)
pred = model1.predict(test_matrix)
cm=metrics.confusion_matrix(test_labels,pred)
print(cm)
plt.imshow(cm, cmap='binary')
Run Code Online (Sandbox Code Playgroud)
这就是我的混淆矩阵的样子:
[[3962 325 0 ..., 0 0 0]
[ 250 2765 0 ..., 0 0 0]
[ 2 8 17 ..., 0 0 0]
...,
[ 1 6 0 ..., 5 0 0]
[ 1 1 0 ..., 0 0 0]
[ 9 0 0 ..., 0 0 9]]
Run Code Online (Sandbox Code Playgroud)
但是,我没有收到明确或清晰的情节.有一个更好的方法吗?
假设我有以下矩阵:
01 02 03 06
03 05 07 02
13 10 11 12
32 01 08 03
Run Code Online (Sandbox Code Playgroud)
我想要前5个元素的索引(在这种情况下,32,13,12,11,10).在MATLAB中最干净的方法是什么?