如何将一个浮点NumPy数组转换为一个int NumPy数组?

设x为NumPy数组。以下几点:

(x > 1) and (x < 3)

给出错误信息:

ValueError:包含多个元素的数组的真值为 模糊。使用a.any()或a.all()

我怎么解决这个问题?

我如何连接两个一维数组在NumPy?我试了numpy.concatenate:

import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5])
np.concatenate(a, b)

但是我得到一个错误:

TypeError:只有长度为1的数组可以转换为Python标量

下面是我生成一个数据框架的代码:

import pandas as pd
import numpy as np

dff = pd.DataFrame(np.random.randn(1,2),columns=list('AB'))

然后我得到了数据框架:

+------------+---------+--------+
|            |  A      |  B     |
+------------+---------+---------
|      0     | 0.626386| 1.52325|
+------------+---------+--------+

当我输入命令时:

dff.mean(axis=1)

我得到:

0    1.074821
dtype: float64

根据pandas的参考,axis=1代表列,我希望命令的结果是

A    0.626386
B    1.523255
dtype: float64

我的问题是:轴在熊猫中是什么意思?

我有一个Numpy数组类型的矩阵。我怎么把它作为映像写到磁盘上呢?任何格式都可以(png, jpeg, bmp…)一个重要的限制是PIL不存在。

如何将NumPy数组转换为Python列表?

我有一个由列表的列表组成的Numpy数组,表示一个具有行标签和列名的二维数组,如下所示:

data = array([['','Col1','Col2'],['Row1',1,2],['Row2',3,4]])

我希望得到的DataFrame有Row1和Row2作为索引值,Col1, Col2作为头值

我可以这样指定索引:

df = pd.DataFrame(data,index=data[:,0]),

但是我不确定如何最好地分配列标题。

在创建NumPy数组后,并将其保存为Django上下文变量,我在加载网页时收到以下错误:

array([   0,  239,  479,  717,  952, 1192, 1432, 1667], dtype=int64) is not JSON serializable

这是什么意思?

在numpy中,有些操作以形状(R, 1)返回,但有些返回(R,)。这将使矩阵乘法更加繁琐,因为需要显式重塑。例如,给定一个矩阵M,如果我们想要numpy。点(M [: 0], numpy。ones((1, R))),其中R是行数(当然,列方面也存在同样的问题)。我们将得到矩阵不是对齐错误,因为M[:,0]是在形状(R,),而是numpy。ones((1, R))的形状是(1,R)。

所以我的问题是:

形状(R, 1)和(R,)的区别是什么?我知道字面上它是一个数字的列表和列表的列表所有的列表都只包含一个数字。只是想知道为什么不设计numpy,使它更喜欢形状(R, 1)而不是(R,),以便于矩阵乘法。 对于上面的例子有没有更好的方法?不需要像这样显式地重塑:numpy.dot(M[:,0]。重塑(R, 1), numpy。((R)))

比较两个NumPy数组相等性的最简单方法是什么(其中相等性定义为:A = B iff对于所有索引i: A[i] == B[i])?

简单地使用==给我一个布尔数组:

 >>> numpy.array([1,1,1]) == numpy.array([1,1,1])

array([ True,  True,  True], dtype=bool)

我是否需要和这个数组的元素来确定数组是否相等,或者有更简单的比较方法吗?