How to use the np.random.permutation function in python

PHPz
Release: 2023-05-17 13:43:06
forward
1889 people have browsed it

    1: Function introduction

    np.random.permutation() Generally speaking, it is a random permutation function, which is to The input data is randomly arranged. The official document states that this function can only randomly arrange one-dimensional data, and for multi-dimensional data, it can only randomly arrange the data in the first dimension.

    In short: the function of np.random.permutation function is to generate a scrambled random list according to the given list

    When processing the data When setting up a data set, you can usually use this function to shuffle the internal order of the data set and shuffle the label sequence in the same order.

    2: Example

    2.1 Directly process array or list numbers

    import numpy as np
    
    data = np.array([1,2,3,4,5,6,7])
    a = np.random.permutation(data)
    b = np.random.permutation([5,0,9,0,1,1,1])
    print(a)
    print( "data:", data )
    print(b)
    Copy after login

    How to use the np.random.permutation function in python

    2.2 Indirect processing: do not change the original data (for arrays Index processing)

    label = np.array([1,2,3,4,5,6,7])
    a = np.random.permutation(np.arange(len(label)))
    print("Label[a] :" ,label[a] )
    Copy after login

    How to use the np.random.permutation function in python

    ##Supplement: Generally it can only be used for N-dimensional arrays and can only convert integer scalar arrays to scalar indexes

    why?label1[a1] label1 is a list, a1 is a random arrangement of list subscripts but! The list structure does not have a scalar index label1[a1] error

    label1=[1,2,3,4,5,6,7]
    print(len(label1))
    
    a1 = np.random.permutation(np.arange(len(label1)))#有结果
    
    print(a1)
    
    print("Label1[a1] :" ,label1[a1] )#这列表结构没有标量索引 所以会报错
    Copy after login

    How to use the np.random.permutation function in python

    2.3 Example: random shuffling of iris flowers in iris data (can be used directly)

    from sklearn import svm
    from sklearn import datasets #sklearn 的数据集
    iris = datasets.load_iris()
    iris_x = iris.data
    iris_y = iris.target
    indices = np.random.permutation(len(iris_x))
    
    #此时 打乱的是数组的下标的排序
    print(indices)
    print(indices[:-10])#到倒数第10个为止
    print(indices[-10:])#最后10个
    
    # print(type(iris_x))   <class &#39;numpy.ndarray&#39;>
    
    #9:1分类
    #iris_x_train = iris_x[indices[:-10]]#使用的数组打乱后的下标
    #iris_y_train = iris_y[indices[:-10]]
    #iris_x_test= iris_x[indices[-10:]]
    #iris_y_test= iris_y[indices[-10:]]
    Copy after login
    The array subscript is the redistribution of scalar index: The subscript starts from 0

    How to use the np.random.permutation function in python

    The above is the detailed content of How to use the np.random.permutation function in python. For more information, please follow other related articles on the PHP Chinese website!

    Related labels:
    source:yisu.com
    Statement of this Website
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
    Popular Tutorials
    More>
    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template