您的位置:首页 > 编程语言 > Python开发

numpy属性方法合集

2018-03-11 16:12 330 查看
数组属性方法总结作用1基本属性a.dtype数组元素类型float32,uint8,...a.shape数组形状(m,n,o,...)a.size数组元素数a.itemsize每个元素占字节数a.nbytes所有元素占的字节a.ndim数组维度2形状相关a.flat所有元素的迭代器a.flatten()返回一个1维数组的复制a.ravel()返回一个1维数组,高效a.resize(new_size)改变形状a.swapaxes(axis1, axis2)交换两个维度的位置a.transpose(*axex)交换所有维度的位置a.T转置,a.transpose()a.squeeze()去除所有长度为1的维度3填充复制a.copy()返回数组的一个复制a.fill(value)将数组的元组设置为特定值4转化a.tolist()将数组转化为列表a.tostring()转换为字符串a.astype(dtype)转化为指定类型a.byteswap(False)转换大小字节序a.view(type_or_dtype)生成一个使用相同内存,但使用不同的表示方法的数组5复数a.imag虚部a.real实部a.conjugate()复共轭a.conj()复共轭(缩写)6保存a.dump(file)将二进制数据存在file中a.dump()将二进制数据表示成字符串a.tofile(fid, sep="",format="%s")格式化ASCⅡ码写入文件7查找排序a.nonzero()返回所有非零元素的索引a.sort(axis=-1)沿某个轴排序a.argsort(axis=-1)沿某个轴,返回按排序的索引a.searchsorted(b)返回将b中元素插入a后能保持有序的索引值8元素数学操作a.clip(low, high)将数值限制在一定范围内a.round(decimals=0)近似到指定精度a.cumsum(axis=None)累加和a.cumprod(axis=None)累乘积9约简操作a.sum(axis=None)求和a.prod(axis=None)求积a.min(axis=None)最小值a.max(axis=None)最大值a.argmin(axis=None)最小值索引a.argmax(axis=None)最大值索引a.ptp(axis=None)最大值减最小值a.mean(axis=None)平均值a.std(axis=None)标准差a.var(axis=None)方差a.any(axis=None)只要有一个不为0,返回真,逻辑或a.all(axis=None)所有都不为0,返回真,逻辑与In[1]:from numpy import *In[2]:a = array([[0, 1, 2, 3], [4, 5, 6, 7]])aOut[2]:array([[0, 1, 2, 3],[4, 5, 6, 7]])数组元素属性:In[3]:Out[3]:dtype('int32')形状:In[4]:Out[4]:(2L, 4L)元素数目:In[5]:Out[5]:元素占字节大小:In[6]:Out[6]:所有元素所占字节:In[7]:Out[7]:32数据维度:In[8]:Out[8]:In[9]:for row in a:print row[0 1 2 3][4 5 6 7]所有元素的迭代器:In[10]:for elt in a.flat:print elt0所有元素组成的一维数组,按照行排列:In[11]:Out[11]:array([0, 1, 2, 3, 4, 5, 6, 7])In[12]:Out[12]:重新改变形状:In[13]:a.resize((4,2))aOut[13]:array([[0, 1],[2, 3],[4, 5],[6, 7]])交换这两个轴的顺序:In[14]:a.swapaxes(0,1)Out[14]:array([[0, 2, 4, 6],[1, 3, 5, 7]])转置:In[15]:a.transpose()Out[15]:In[16]:Out[16]:In[17]:a2 = array([1,2,3])a2.shapeOut[17]:(3L,)In[18]:a2.resize((1,3,1))a2.shapeOut[18]:(1L, 3L, 1L)去除长度为1的维度:In[19]:a2 = a2.squeeze()a2.shapeOut[19]:复制:In[20]:b = a.copy()bOut[20]:复制不影响原来的数组:In[21]:b[0][0] = -1b # First value changedOut[21]:array([[-1, 1],[ 2, 3],[ 4, 5],[ 6, 7]])In[22]:a # original not changed because b is a copyOut[22]:填充:In[23]:b.fill(4)bOut[23]:array([[4, 4],[4, 4],[4, 4]])转化为列表:In[24]:Out[24]:[[0, 1], [2, 3], [4, 5], [6, 7]]转化为字符串:In[25]:Out[25]:''改变数组元素类型:In[26]:a.astype(float)Out[26]:array([[ 0., 1.],[ 2., 3.],[ 4., 5.],[ 6., 7.]])In[27]:b = a.copy()b.byteswap(False)Out[27]:array([[ 0, 16777216],[ 33554432, 50331648],[ 67108864, 83886080],[100663296, 117440512]])将它看成16位整数:In[28]:a.view(dtype=int16)Out[28]:array([[0, 0, 1, 0],[2, 0, 3, 0],[4, 0, 5, 0],[6, 0, 7, 0]], dtype=int16)实部:In[29]:b = array([1+2j, 3+4j, 5+6j])b.realOut[29]:array([ 1., 3., 5.])虚部:In[30]:b.imagOut[30]:array([ 2., 4., 6.])共轭:In[31]:b.conj()Out[31]:array([ 1.-2.j, 3.-4.j, 5.-6.j])In[32]:b.conjugate()Out[32]:保存成文本:In[33]:a.dump("file.txt")字符串:In[34]:a.dumps()Out[34]:'cnumpy.core.multiarray_reconstructqcnumpyndarrayqKUbRq(KcnumpydtypeqUi4KKRq(KU<NNNJJKtbU tb.'写入文件:In[35]:a.tofile('foo.csv', sep=',', format="%s")非零元素的索引:In[36]:Out[36]:(array([0, 1, 1, 2, 2, 3, 3], dtype=int64),array([1, 0, 1, 0, 1, 0, 1], dtype=int64))排序:In[37]:b = array([3,2,7,4,1])b.sort()bOut[37]:array([1, 2, 3, 4, 7])排序的索引位置:In[38]:b = array([2,3,1])b.argsort(axis=-1)Out[38]:array([2, 0, 1], dtype=int64)将b插入a中的索引,使得a保持有序:In[39]:a = array([1,3,4,6])b = array([0,2,5])a.searchsorted(b)Out[39]:array([0, 1, 3], dtype=int64)限制在一定范围:In[40]:a = array([[4,1,3],[2,1,5]])a.clip(0,2)Out[40]:array([[2, 1, 2],[2, 1, 2]])近似:In[41]:a = array([1.344, 2.449, 2.558])a.round(decimals=2)Out[41]:array([ 1.34, 2.45, 2.56])累加和:In[42]:a = array([[4,1,3],[2,1,5]])a.cumsum(axis=None)Out[42]:array([ 4, 5, 8, 10, 11, 16])累乘积:In[43]:Out[43]:array([ 4, 4, 12, 24, 24, 120])求和:In[44]:a = array([[4,1,3],[2,1,5]])a.sum(axis=None)Out[44]:16求积:In[45]:Out[45]:120最小值:In[46]:Out[46]:最大值:In[47]:Out[47]:最小值索引:In[48]:Out[48]:最大值索引:In[49]:Out[49]:最大间隔:In[50]:Out[50]:均值:In[51]:Out[51]:2.6666666666666665标准差:In[52]:Out[52]:1.49071198499986方差:In[53]:Out[53]:2.2222222222222228是否有非零元素:In[54]:Out[54]:True是否全部非零:In[55]:a.all()Out[55]:删除生成的文件:In[56]:import osos.remove('foo.csv')os.remove('file.txt')转载自:https://baijiahao.baidu.com/s?id=1576827524017294960&wfr=spider&for=pc
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python numpy