numpy,ndarray배열, argsort

2023. 11. 16. 22:49데이터분석

#1번
import numpy as np

x=np.array([4,2,6,5,1,3,0])
print(np.sort(x))
print('\n')
print(x)
[0 1 2 3 4 5 6]


[4 2 6 5 1 3 0]

 

#2번 
x=np.array([4,2,6,5,1,3,0])
print(x.sort())

print(x)​
None
[0 1 2 3 4 5 6]

 

#3번
x=np.array([4,2,6,5,1,3,0])

x_reverse_1=np.sort(x)[::-1]
x_reverse_1

 

array([6, 5, 4, 3, 2, 1, 0])
In [12]:
#4번
x=np.array([4,2,6,5,1,3,0])
x_reverse_2 = x[np.argsort(-x)]
x_reverse_2

 

array([6, 5, 4, 3, 2, 1, 0])
In [14]:
#5번
x2=np.array([[2,1,6],
            [0,7,4],
            [5,3,2]])

x2_sort_axis_1=np.sort(x2,axis=1)
x2_sort_axis_1

 

array([[1, 2, 6],
       [0, 4, 7],
       [2, 3, 5]])

 

#6번
x2=np.array([[2,1,6],
            [0,7,4],
            [5,3,2]])
x2_sort_axis_0=np.sort(x2,axis=0)
x2_sort_axis_0

 

array([[0, 1, 2],
       [2, 3, 4],
       [5, 7, 6]])

 

#7번
x2=np.array([[2,1,6],
            [0,7,4],
            [5,3,2]])
x2_sort_axis_0_reverse=np.sort(x2,axis=0)[::-1]
x2_sort_axis_0_reverse​
array([[5, 7, 6],
       [2, 3, 4],
       [0, 1, 2]])

-문제

#8번
name_array=np.array(['john','mike','sarah','kate','samuel'])
score_array=np.array([78,95,84,98,88])

sort_indices_asc=np.argsort(score_array)
print('성적 오름차순 정렬 시 score_array의 인덱스:', ~~~~~~~~~~~~)
print('성적 오름차순으로 name_Array의 이름 축력:',~~~~~~~~~~~~])
성적 오름차순 정렬 시 score_array의 인덱스: [0 2 4 1 3]
성적 오름차순으로 name_Array의 이름 축력: ['john' 'sarah' 'samuel' 'mike' 'kate']
 

-정답

#8번
name_array=np.array(['john','mike','sarah','kate','samuel'])
score_array=np.array([78,95,84,98,88])

sort_indices_asc=np.argsort(score_array)
print('성적 오름차순 정렬 시 score_array의 인덱스:', sort_indices_asc)
print('성적 오름차순으로 name_Array의 이름 축력:',name_array[sort_indices_asc])