当前位置:首页 » 编程语言 » pythonreshape1

pythonreshape1

发布时间: 2025-01-01 11:24:18

㈠ reshape用负值做参数,python怎么处理

>>> import numpy
>>> numpy.reshape([1,2,3,4],(2,-1))
array([[1, 2],
[3, 4]])
>>> numpy.reshape([1,2,3,4],(-1,4))
array([[1, 2, 3, 4]])
>>> numpy.reshape([1,2,3,4],(1,-1,4))
array([[[1, 2, 3, 4]]])

㈡ 使用numpy生成一个1-200之间的奇数数据,然后将其转换为20行的2维数组,数据类

可以使用NumPy中的`arange()`函数生成1-200之间的奇数数据,并使用`reshape()`函数将其转换为20行的2维数组。数据类型可以使用默认的`int64`。

代码如下:

```python
import numpy as np

# 生成1-200之间的奇数数据
data = np.arange(1, 201, 2)

# 将数据转换为20x10的2维数组
data = data.reshape(20, 10)

print(data)
```

输出结果为:

```
[[ 1 3 5 7 9 11 13 15 17 19]
[ 21 23 25 27 29 31 33 35 37 39]
[ 41 43 45 47 49 51 53 55 57 59]
[ 61 63 65 67 69 71 73 75 77 79]
[ 81 83 85 87 89 91 93 95 97 99]
[101 103 105 107 109 111 113 115 117 119]
[121 123 125 127 129 131 133 135 137 139]
[141 143 145 147 149 151 153 155 157 159]
[161 163 165 167 169 171 173 175 177 179]
[181 183 185 187 189 191 193 195 197 199]]
```

㈢ python基础之numpy.reshape详解

这个方法是在不改变数据内容的情况下,改变一个数组的格式,参数及返回值,官网介绍:

a:数组--需要处理的数据

newshape:新的格式--整数或整数数组,如(2,3)表示2行3列,新的形状应该与原来的形状兼容,即行数和列数相乘后等于a中元素的数量

order:

 首先做出翻译: order  : 可选范围为{‘C’, ‘F’, ‘A’}。使用索引顺序读取a的元素,并按照索引顺序将元素放到变换后的的数组中。如果不进行order参数的设置,默认参数为C。

(1)“C”指的是用类C写的读/索引顺序的元素,最后一个维度变化最快,第一个维度变化最慢。以二维数组为例,简单来讲就是横着读,横着写,优先读/写一行。

(2)“F”是指用FORTRAN类索引顺序读/写元素,最后一个维度变化最慢,第一个维度变化最快。竖着读,竖着写,优先读/写一列。注意,“C”和“F”选项不考虑底层数组的内存布局,只引用索引的顺序。

(3)“A”选项所生成的数组的效果与原数组a的数据存储方式有关,如果数据是按照FORTRAN存储的话,它的生成效果与”F“相同,否则与“C”相同。这里可能听起来有点模糊,下面会给出示例。

二、示例解释

1、首先随机生成一个4行3列的数组

2、使用reshape,这里有两种使用方法,可以使用np.reshape(r,(-1,1),order='F'),也可以使用r1=r.reshape((-1,1),order='F'),这里我选择使用第二种方法。通过示例可以观察不同的order参数效果。

通过例子可以看出来,F是优先对列信息进行操作,而C是优先行信息操作。如果未对r的格式进行设置,那么我们rashape的时候以“A”的顺序进行order的话,它的效果和“C”相同。

3、我们将r的存储方式进行修改,修改为类Fortan的方式进行存储。并做与第2步类似的操作。

基础操作样例:

1.引入numpy,名称为np 

2.接下来创建一个数组a,可以看到这是一个一维的数组 

3.使用reshape()方法来更改数组的形状,可以看到看数组d成为了一个二维数组

4.通过reshape生成的新数组和原始数组公用一个内存,也就是说,假如更改一个数组的元素,另一个数组也将发生改变 

5.同理还可以得到一个三维数组 

reshape(-1,1)什么意思:

大意是说,数组新的shape属性应该要与原来的配套,如果等于-1的话,那么Numpy会根据剩下的维度计算出数组的另外一个shape属性值。

举例:

同理,只给定行数,newshape等于-1,Numpy也可以自动计算出新数组的列数。

㈣ python 里面reshap(-1,1024)中的-1什么意思

为-1,表示此时该元素值表示为指定,会从数组的长度和剩余的维度中推断出;
如1:
>>> a=np.array([1,2,3,4,5])
>>> d=a.reshape((-1,1)) #指定的值被推断出为5
>>> d
输出:array([[1],
[2],
[3],
[4],
[5]])
如2:
>>> b=np.array([[1,2,3],[4,5,6]])
>>> d=b.reshape(3,-1) #指定的值被推断出为2
>>> d
输出:array([[1, 2],
[3, 4],
[5, 6]])

热点内容
java判断数据库是否存在 发布:2025-01-04 07:58:55 浏览:364
php高级培训 发布:2025-01-04 07:48:58 浏览:906
ubuntu源码包 发布:2025-01-04 07:40:54 浏览:285
java实现注册 发布:2025-01-04 07:39:48 浏览:864
js压缩视频 发布:2025-01-04 07:39:47 浏览:738
光遇安卓为什么不更新纯净录屏 发布:2025-01-04 07:27:43 浏览:463
为什么安卓手机不出面容识别 发布:2025-01-04 07:27:42 浏览:710
汽车用压缩天然气钢瓶 发布:2025-01-04 07:17:57 浏览:725
rms服务器搭建 发布:2025-01-04 07:16:26 浏览:466
我的世界租服务器需要钱吗 发布:2025-01-04 07:14:08 浏览:538