“数组”的版本间差异
跳到导航
跳到搜索
(→数组) |
(→数组) |
||
第1行: | 第1行: | ||
==数组== |
==数组== |
||
* REFORM 数组变形 |
* REFORM 数组变形 |
||
:将数组变为制定的维数 |
|||
A=indgen(20), B=reform(A,2,10) |
A=indgen(20), B=reform(A,2,10) |
||
:reform在默认(无输入参数)的情况下将数组变为一维 |
|||
A=reform(data[1,*]) |
A=reform(data[1,*]) |
||
2013年10月21日 (一) 06:08的版本
数组
- REFORM 数组变形
- 将数组变为制定的维数
A=indgen(20), B=reform(A,2,10)
- reform在默认(无输入参数)的情况下将数组变为一维
A=reform(data[1,*])
- rotate
- 可以把数组旋转后组成矩阵,类似于列操作。
a=indgen(10) b=indgen(10) c=[rotate(a,1),rotate(b,10]
- reverse
- 数组反向
- 例:数组降序排列,结合sort(默认升序)
PRINT, 'Elements of A in descending order: ', A[REVERSE(SORT(A))]
- 扩维
IDL>print,fan(indgen(3),2) IDL>print,fan(indgen(3),2,/trans)
- 多维数组的位置
- 用array_indices
array = RANDOMU(seed, 10, 10) mx = MAX(array, location) ind=array_indices(array,location) print, ind, array[ind[0],ind[1]], format = '(%"Value at [%d, %d] is %f")'
IDL prints: Value at [3, 6] is 0.973381
- 数组随机打乱(shuffle)
Arr_S=arr[sort(randomu(seed,N_elements(arr))]