티스토리 뷰

beginner/파이썬 기초

NumPy_정렬

johh 2019. 2. 15. 13:33
2019.02.15

연습문제

  1. 기후 데이터를 불러와서 날자 부분을 [연도, 달, 일]로 분리하라.
In [2]:
s = '지점,일시,평균기온(°C),최저기온(°C),최저기온 시각(hhmi),최고기온(°C),최고기온 시각(hhmi),강수 계속시간(hr),10분 최다 강수량(mm),10분 최다강수량 시각(hhmi),1시간 최다강수량(mm),1시간 최다 강수량 시각(hhmi),일강수량(mm),최대 순간 풍속(m/s),최대 순간 풍속 풍향(16방위),최대 순간풍속 시각(hhmi),최대 풍속(m/s),최대 풍속 풍향(16방위),최대 풍속 시각(hhmi),평균 풍속(m/s),풍정합(100m),평균 이슬점온도(°C),최소 상대습도(%),최소 상대습도 시각(hhmi),평균 상대습도(%),평균 증기압(hPa),평균 현지기압(hPa),최고 해면기압(hPa),최고 해면기압 시각(hhmi),최저 해면기압(hPa),최저 해면기압 시각(hhmi),평균 해면기압(hPa),가조시간(hr),합계 일조 시간(hr),1시간 최다일사 시각(hhmi),1시간 최다일사량(MJ/m2),합계 일사(MJ/m2),일 최심신적설(cm),일 최심신적설 시각(hhmi),일 최심적설(cm),일 최심적설 시각(hhmi),합계 3시간 신적설(cm),평균 전운량(1/10),평균 중하층운량(1/10),평균 지면온도(°C),최저 초상온도(°C),평균 5cm 지중온도(°C),평균 10cm 지중온도(°C),평균 20cm 지중온도(°C),평균 30cm 지중온도(°C),0.5m 지중온도(°C),1.0m 지중온도(°C),1.5m 지중온도(°C),3.0m 지중온도(°C),5.0m 지중온도(°C),합계 대형증발량(mm),합계 소형증발량(mm),9-9강수(mm),기사,안개 계속시간(hr)'
cols = s.strip().split(',')
cols
Out[2]:
['지점',
 '일시',
 '평균기온(°C)',
 '최저기온(°C)',
 '최저기온 시각(hhmi)',
 '최고기온(°C)',
 '최고기온 시각(hhmi)',
 '강수 계속시간(hr)',
 '10분 최다 강수량(mm)',
 '10분 최다강수량 시각(hhmi)',
 '1시간 최다강수량(mm)',
 '1시간 최다 강수량 시각(hhmi)',
 '일강수량(mm)',
 '최대 순간 풍속(m/s)',
 '최대 순간 풍속 풍향(16방위)',
 '최대 순간풍속 시각(hhmi)',
 '최대 풍속(m/s)',
 '최대 풍속 풍향(16방위)',
 '최대 풍속 시각(hhmi)',
 '평균 풍속(m/s)',
 '풍정합(100m)',
 '평균 이슬점온도(°C)',
 '최소 상대습도(%)',
 '최소 상대습도 시각(hhmi)',
 '평균 상대습도(%)',
 '평균 증기압(hPa)',
 '평균 현지기압(hPa)',
 '최고 해면기압(hPa)',
 '최고 해면기압 시각(hhmi)',
 '최저 해면기압(hPa)',
 '최저 해면기압 시각(hhmi)',
 '평균 해면기압(hPa)',
 '가조시간(hr)',
 '합계 일조 시간(hr)',
 '1시간 최다일사 시각(hhmi)',
 '1시간 최다일사량(MJ/m2)',
 '합계 일사(MJ/m2)',
 '일 최심신적설(cm)',
 '일 최심신적설 시각(hhmi)',
 '일 최심적설(cm)',
 '일 최심적설 시각(hhmi)',
 '합계 3시간 신적설(cm)',
 '평균 전운량(1/10)',
 '평균 중하층운량(1/10)',
 '평균 지면온도(°C)',
 '최저 초상온도(°C)',
 '평균 5cm 지중온도(°C)',
 '평균 10cm 지중온도(°C)',
 '평균 20cm 지중온도(°C)',
 '평균 30cm 지중온도(°C)',
 '0.5m 지중온도(°C)',
 '1.0m 지중온도(°C)',
 '1.5m 지중온도(°C)',
 '3.0m 지중온도(°C)',
 '5.0m 지중온도(°C)',
 '합계 대형증발량(mm)',
 '합계 소형증발량(mm)',
 '9-9강수(mm)',
 '기사',
 '안개 계속시간(hr)']
In [5]:
for i,c in enumerate(cols):
    print('%03d=>%s' % (i,c))
000=>지점
001=>일시
002=>평균기온(°C)
003=>최저기온(°C)
004=>최저기온 시각(hhmi)
005=>최고기온(°C)
006=>최고기온 시각(hhmi)
007=>강수 계속시간(hr)
008=>10분 최다 강수량(mm)
009=>10분 최다강수량 시각(hhmi)
010=>1시간 최다강수량(mm)
011=>1시간 최다 강수량 시각(hhmi)
012=>일강수량(mm)
013=>최대 순간 풍속(m/s)
014=>최대 순간 풍속 풍향(16방위)
015=>최대 순간풍속 시각(hhmi)
016=>최대 풍속(m/s)
017=>최대 풍속 풍향(16방위)
018=>최대 풍속 시각(hhmi)
019=>평균 풍속(m/s)
020=>풍정합(100m)
021=>평균 이슬점온도(°C)
022=>최소 상대습도(%)
023=>최소 상대습도 시각(hhmi)
024=>평균 상대습도(%)
025=>평균 증기압(hPa)
026=>평균 현지기압(hPa)
027=>최고 해면기압(hPa)
028=>최고 해면기압 시각(hhmi)
029=>최저 해면기압(hPa)
030=>최저 해면기압 시각(hhmi)
031=>평균 해면기압(hPa)
032=>가조시간(hr)
033=>합계 일조 시간(hr)
034=>1시간 최다일사 시각(hhmi)
035=>1시간 최다일사량(MJ/m2)
036=>합계 일사(MJ/m2)
037=>일 최심신적설(cm)
038=>일 최심신적설 시각(hhmi)
039=>일 최심적설(cm)
040=>일 최심적설 시각(hhmi)
041=>합계 3시간 신적설(cm)
042=>평균 전운량(1/10)
043=>평균 중하층운량(1/10)
044=>평균 지면온도(°C)
045=>최저 초상온도(°C)
046=>평균 5cm 지중온도(°C)
047=>평균 10cm 지중온도(°C)
048=>평균 20cm 지중온도(°C)
049=>평균 30cm 지중온도(°C)
050=>0.5m 지중온도(°C)
051=>1.0m 지중온도(°C)
052=>1.5m 지중온도(°C)
053=>3.0m 지중온도(°C)
054=>5.0m 지중온도(°C)
055=>합계 대형증발량(mm)
056=>합계 소형증발량(mm)
057=>9-9강수(mm)
058=>기사
059=>안개 계속시간(hr)
In [10]:
import numpy as np
In [177]:
f=open('기상관측_서울_20181004141633.csv', encoding='cp949')

f.readline()

data=[]
t = []

for line in f:
    I = line.strip().split(',')
    I2 = [int(i) for i in I[1].split('-')]      # 2019-01-29 를  '-'에 대해 스플릿 하면 [2019,01,29]라는 리스트가 나온다.
    data.append(I2)
    t.append(I[5])

f.close()
  1. 기후 데이터에서 "최고기온"이 비어있는 날은 몇일인가? (도전문제: 그 날은 몇월 몇일인가?)
In [162]:
np.loadtxt('기상관측_서울_20181004141633.csv', skiprows=1, delimiter=',',usecols=[5],
          converters = {5: lambda s: float(s) if s!='' else 0}, encoding='cp949')
Out[162]:
array([-4.3, -1.9,  3.1, ..., 19.7, 22. , 24.2])
In [164]:
len(t)
Out[164]:
1372
In [153]:
n=0
idx=[]

for i,v in enumerate(t):
    if v.strip() == '':  
# strip을 이용해 공백을 없애고 ''인것이 있으면 n에 1개 더해줘(개수를 셈). 
#그리고 해당 부분 인덱스를 i=idx에 넣어줌 
        n+=1
        idx.append(i)

n, idx
Out[153]:
(1, [1015])

int('112') = 숫자, int('112a')=error를 이용해 데이터 안에 문자가 있는지 확인한다.

np는 숫자로 만들어놓고 사용하는게 좋다.

데이터 전처리를 통해 빠진 정보나, 중복된 부분 등등 찾아낼 수 있어야 한다. 그리고 그것들을 어떻게 처리할지도 생각해야한다.

평균기온 그래프

In [154]:
import matplotlib.pyplot as plt
In [168]:
f = open('기상관측_서울_20181004141633.csv', encoding='cp949')

f.readline()

t=[]
m=[]

for line in f:
    I = line.strip().split(',')
    t.append(float(I[2]))
    m.append(float(I[24]))
    
f.close()
In [170]:
plt.plot(t)
plt.plot(m)
Out[170]:
[<matplotlib.lines.Line2D at 0xcbc5acf908>]
In [171]:
plt.scatter(t,m)
Out[171]:
<matplotlib.collections.PathCollection at 0xcbc5b315c0>

NumPy 정렬

In [29]:
import numpy as np
import matplotlib.pyplot as plt

sort() 함수

  • 기본은 옆으로 정렬한다.
In [32]:
a = np.random.randint(10,size=10)  #np에도 sort 기능이 있다
a
Out[32]:
array([4, 4, 3, 2, 7, 5, 3, 7, 3, 6])
In [34]:
a.sort()
In [35]:
a
Out[35]:
array([2, 3, 3, 3, 4, 4, 5, 6, 7, 7])
In [37]:
a[::-1]  #여기 넣는 숫자에 따라 몇칸 뛰고 숫자가 들어갈지 정한다. -는 반대방향
Out[37]:
array([7, 7, 6, 5, 4, 4, 3, 3, 3, 2])
In [39]:
a[::2]
Out[39]:
array([2, 3, 4, 5, 7])

근데 데이터 자체를 바꿔버리니 다른 방법을 이용하고 싶다.

In [40]:
a = np.random.randint(10,size=10)
a
Out[40]:
array([5, 9, 7, 7, 4, 5, 1, 2, 9, 8])
In [41]:
a2 = np.sort(a)
a2
Out[41]:
array([1, 2, 4, 5, 5, 7, 7, 8, 9, 9])

2차원이면 어떻게 될까?

In [45]:
a = np.random.randint(25, size=[5,5])
a
Out[45]:
array([[ 4, 16, 24, 19, 22],
       [13,  8,  0, 22,  0],
       [ 8, 17, 22,  9, 13],
       [21, 18,  8,  5,  2],
       [13,  9, 15,  7, 15]])
In [46]:
np.sort(a) # 옆으로 정렬 [axis=1]
Out[46]:
array([[ 4, 16, 19, 22, 24],
       [ 0,  0,  8, 13, 22],
       [ 8,  9, 13, 17, 22],
       [ 2,  5,  8, 18, 21],
       [ 7,  9, 13, 15, 15]])
In [47]:
np.sort(a, axis=0) # 아래로 정렬 [axis=0]
Out[47]:
array([[ 4,  8,  0,  5,  0],
       [ 8,  9,  8,  7,  2],
       [13, 16, 15,  9, 13],
       [13, 17, 22, 19, 15],
       [21, 18, 24, 22, 22]])

하나의 컬럼(속성)을 기준으로 정렬하기

  • np.argsort()
  • np.lexsort()

줄단위로 먼저 줄 번호를 정렬한 다음, 도출된 인덱스를 기반으로 원본 데이터를 인덱싱한다.

In [48]:
a
Out[48]:
array([[ 4, 16, 24, 19, 22],
       [13,  8,  0, 22,  0],
       [ 8, 17, 22,  9, 13],
       [21, 18,  8,  5,  2],
       [13,  9, 15,  7, 15]])
In [49]:
last_col = a[:,-1]
last_col
Out[49]:
array([22,  0, 13,  2, 15])
In [50]:
np.sort(last_col)
Out[50]:
array([ 0,  2, 13, 15, 22])
In [54]:
np.argsort(last_col)  # arg가 붙으면 결과가 index이다. 무조건 표 형태는 argsort를 호출한다.
Out[54]:
array([1, 3, 2, 4, 0], dtype=int64)

인덱스가 22가 0, 0은 1, 13은 2, 2는 3, 15가 4인데,
이걸 정렬하면 0 , 2, 13, 15, 22 순으로 정렬되고
이것의 인덱스는 1, 3, 2, 4, 0이 된다.

In [60]:
a[np.argsort(last_col)]  # a[[1,3,2,4,0]] 리스트 안에 인덱스 , 1번 3번 2번 4번 0번 행 순서대로 나타낸다. a[[:,[1,3,2,4,0]]]은 행 순서대로
Out[60]:
array([[13,  8,  0, 22,  0],
       [21, 18,  8,  5,  2],
       [ 8, 17, 22,  9, 13],
       [13,  9, 15,  7, 15],
       [ 4, 16, 24, 19, 22]])
In [63]:
a[np.argsort(a[:,-1])] # 한 줄로 처리하기
Out[63]:
array([[13,  8,  0, 22,  0],
       [21, 18,  8,  5,  2],
       [ 8, 17, 22,  9, 13],
       [13,  9, 15,  7, 15],
       [ 4, 16, 24, 19, 22]])
In [67]:
## 사례
'''
X = iris[:,:4]
y = iris[:,4]
X[np.argsort(y)]'''
Out[67]:
'\nX = iris[:,:4]\ny = iris[:,4]\nX[np.argsort(y)]'
In [68]:
a
Out[68]:
array([[ 4, 16, 24, 19, 22],
       [13,  8,  0, 22,  0],
       [ 8, 17, 22,  9, 13],
       [21, 18,  8,  5,  2],
       [13,  9, 15,  7, 15]])
In [71]:
names = ['홍','장','이','김','한']
np.sort(names)
Out[71]:
array(['김', '이', '장', '한', '홍'], dtype='<U1')
In [73]:
np.argsort(names)
Out[73]:
array([3, 2, 1, 4, 0], dtype=int64)
In [72]:
a[np.argsort(names)] # a를 정렬하는데 names를 기준으로 정렬함.
Out[72]:
array([[21, 18,  8,  5,  2],
       [ 8, 17, 22,  9, 13],
       [13,  8,  0, 22,  0],
       [13,  9, 15,  7, 15],
       [ 4, 16, 24, 19, 22]])

연습문제

Iris 데이터를 첫번째 칼럼 기준으로 정렬하시오.
정렬된 데이터의 4가지 속성을 plt.plot() 함수를 이용하여 4가지 직선으로 시각화 하시오.

  • lexsort()는 뒤의 인자를 먼저 기준을 잡아 정렬한다.
  • 정렬된 인덱스를 반환한다.
In [84]:
f = open('iris.csv')

line = f.readline()
features = line.strip().split(',')[:4]

labels = ['Iris-setosa', 'Iris-versicolor', 'Iris-virginica']

data = []
for line in f:
    l = line.strip().split(',')
    
    l[:4] = [float(i) for i in l[:4]]

    l[4] = labels.index(l[4])
    
    data.append(l)

f.close()

iris = np.array(data)
In [86]:
names = ['SepalLength','SepalWidth','PetalLength','PetalWidth','Name']
In [87]:
np.sort(names)
Out[87]:
array(['Name', 'PetalLength', 'PetalWidth', 'SepalLength', 'SepalWidth'],
      dtype='<U11')
In [92]:
np.argsort(names)
Out[92]:
array([4, 2, 3, 0, 1], dtype=int64)
In [98]:
t=iris[:,np.argsort(names)]
In [99]:
X=t[:,1:]
In [100]:
import matplotlib.pyplot as plt
In [103]:
plt.plot(X)
plt.legend(['PL','PW','SL','SW'])
Out[103]:
<matplotlib.legend.Legend at 0xcbc45c12b0>

lexsort()

  • 뒤의 인자를 먼저 기준을 잡아 정렬
  • 정렬된 인덱스를 반환한다.
In [104]:
np.lexsort([a[:,1],a[:,0]]) # 칼럼0 -> 칼럼1 순으로 정렬한 인덱스를 반환한다.
Out[104]:
array([0, 2, 1, 4, 3], dtype=int64)

np.argmax(), np.argmin() 함수도 있다.

  • 가장 큰 값과 가장 작은 값의 인덱스를 찾는 역할
In [105]:
a
Out[105]:
array([[ 4, 16, 24, 19, 22],
       [13,  8,  0, 22,  0],
       [ 8, 17, 22,  9, 13],
       [21, 18,  8,  5,  2],
       [13,  9, 15,  7, 15]])
In [106]:
np.argmax(a)   # a 안에서 가장 큰 값인 24의 인덱스는 2이다.
Out[106]:
2
In [108]:
np.argmin(a)   # a 안에서 가장 작은 값인 0의 인덱스는 7이다.(처음에 있는 0의 인덱스 값이 나왔다.)
Out[108]:
7
In [109]:
np.argmax(a,axis=0)  # 각 열에서 가장 큰 숫자의 열에서의 인덱스.
Out[109]:
array([3, 3, 0, 1, 0], dtype=int64)
In [111]:
np.argmin(a,axis=0)  # 각 열에서 가장 작은 숫자의 열에서의 인덱스.
Out[111]:
array([0, 1, 1, 3, 1], dtype=int64)

np.where()함수

- 조건에 맞는 인덱스를 반환한다.

In [112]:
a = np.random.randint(10, size=[5,5])
a
Out[112]:
array([[1, 2, 2, 4, 6],
       [8, 1, 7, 4, 5],
       [2, 4, 0, 1, 5],
       [0, 8, 3, 5, 4],
       [9, 5, 9, 6, 3]])
In [116]:
np.where(a<5)    # 5보다 작은 값의 좌표값 (0,0), (0,1), (0,2),... 의 인덱스를 출력. 왜 이렇게 출력할까?
Out[116]:
(array([0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4], dtype=int64),
 array([0, 1, 2, 3, 1, 3, 0, 1, 2, 3, 0, 2, 4, 4], dtype=int64))
In [119]:
a[np.where(a<5)]       
# 이렇게 그 값들을 출력하기 위해! (0,0)에 해당하는 값은 1, (0,1)에 해당하는 값은 2, (0,3)에 해당하는 값은 4 ...
# a[1] = 1행 출력, a[:,1]= 1열 출력, a[1,4]= (1,4) 해당 점을 출력. a[[1,3]]= 1,3행 출력, a[:,[1,3]]= 1,3행 출력, a[[1,3],[2,4]]= (1,2)와 (2,4)를 출력
Out[119]:
array([1, 2, 2, 4, 1, 4, 2, 4, 0, 1, 0, 3, 4, 3])
In [121]:
np.where(a[:,-1]<5)    #마지막 열에 5보다 작은 값은 4와 3인데 그것의 인덱스는 3과 4이다.
Out[121]:
(array([3, 4], dtype=int64),)
In [145]:
a[np.where(a[:,-1]<5)]
Out[145]:
array([[0, 8, 3, 5, 4],
       [9, 5, 9, 6, 3]])
In [176]:
tp = (1,2)
tp[0]
Out[176]:
1
In [174]:
tp = (99,)
tp[0]
Out[174]:
99
In [144]:
np.where(a[:,-1]<5)[0]
Out[144]:
array([3, 4], dtype=int64)
In [125]:
a[np.where(a[:,-1]<5)[0]]   #인덱스를 출력할 수 있다.
Out[125]:
array([[0, 8, 3, 5, 4],
       [9, 5, 9, 6, 3]])
In [126]:
iris[iris[:,-1]==1]    #값을 출력할 수 있다.
Out[126]:
array([[7. , 3.2, 4.7, 1.4, 1. ],
       [6.4, 3.2, 4.5, 1.5, 1. ],
       [6.9, 3.1, 4.9, 1.5, 1. ],
       [5.5, 2.3, 4. , 1.3, 1. ],
       [6.5, 2.8, 4.6, 1.5, 1. ],
       [5.7, 2.8, 4.5, 1.3, 1. ],
       [6.3, 3.3, 4.7, 1.6, 1. ],
       [4.9, 2.4, 3.3, 1. , 1. ],
       [6.6, 2.9, 4.6, 1.3, 1. ],
       [5.2, 2.7, 3.9, 1.4, 1. ],
       [5. , 2. , 3.5, 1. , 1. ],
       [5.9, 3. , 4.2, 1.5, 1. ],
       [6. , 2.2, 4. , 1. , 1. ],
       [6.1, 2.9, 4.7, 1.4, 1. ],
       [5.6, 2.9, 3.6, 1.3, 1. ],
       [6.7, 3.1, 4.4, 1.4, 1. ],
       [5.6, 3. , 4.5, 1.5, 1. ],
       [5.8, 2.7, 4.1, 1. , 1. ],
       [6.2, 2.2, 4.5, 1.5, 1. ],
       [5.6, 2.5, 3.9, 1.1, 1. ],
       [5.9, 3.2, 4.8, 1.8, 1. ],
       [6.1, 2.8, 4. , 1.3, 1. ],
       [6.3, 2.5, 4.9, 1.5, 1. ],
       [6.1, 2.8, 4.7, 1.2, 1. ],
       [6.4, 2.9, 4.3, 1.3, 1. ],
       [6.6, 3. , 4.4, 1.4, 1. ],
       [6.8, 2.8, 4.8, 1.4, 1. ],
       [6.7, 3. , 5. , 1.7, 1. ],
       [6. , 2.9, 4.5, 1.5, 1. ],
       [5.7, 2.6, 3.5, 1. , 1. ],
       [5.5, 2.4, 3.8, 1.1, 1. ],
       [5.5, 2.4, 3.7, 1. , 1. ],
       [5.8, 2.7, 3.9, 1.2, 1. ],
       [6. , 2.7, 5.1, 1.6, 1. ],
       [5.4, 3. , 4.5, 1.5, 1. ],
       [6. , 3.4, 4.5, 1.6, 1. ],
       [6.7, 3.1, 4.7, 1.5, 1. ],
       [6.3, 2.3, 4.4, 1.3, 1. ],
       [5.6, 3. , 4.1, 1.3, 1. ],
       [5.5, 2.5, 4. , 1.3, 1. ],
       [5.5, 2.6, 4.4, 1.2, 1. ],
       [6.1, 3. , 4.6, 1.4, 1. ],
       [5.8, 2.6, 4. , 1.2, 1. ],
       [5. , 2.3, 3.3, 1. , 1. ],
       [5.6, 2.7, 4.2, 1.3, 1. ],
       [5.7, 3. , 4.2, 1.2, 1. ],
       [5.7, 2.9, 4.2, 1.3, 1. ],
       [6.2, 2.9, 4.3, 1.3, 1. ],
       [5.1, 2.5, 3. , 1.1, 1. ],
       [5.7, 2.8, 4.1, 1.3, 1. ]])
In [128]:
a
Out[128]:
array([[1, 2, 2, 4, 6],
       [8, 1, 7, 4, 5],
       [2, 4, 0, 1, 5],
       [0, 8, 3, 5, 4],
       [9, 5, 9, 6, 3]])
In [129]:
np.where(a<5,0,1)  # if문과 유사
Out[129]:
array([[0, 0, 0, 0, 1],
       [1, 0, 1, 0, 1],
       [0, 0, 0, 0, 1],
       [0, 1, 0, 1, 0],
       [1, 1, 1, 1, 0]])
In [134]:
np.where(a<5,0,a)   # a가 5보다 작으면 0 아니면 a 값을 적어라
Out[134]:
array([[0, 0, 0, 0, 6],
       [8, 0, 7, 0, 5],
       [0, 0, 0, 0, 5],
       [0, 8, 0, 5, 0],
       [9, 5, 9, 6, 0]])
In [132]:
np.maximum(a,5)  # a와 5를 비교해서 큰 값을 적어라
Out[132]:
array([[5, 5, 5, 5, 6],
       [8, 5, 7, 5, 5],
       [5, 5, 5, 5, 5],
       [5, 8, 5, 5, 5],
       [9, 5, 9, 6, 5]])
In [135]:
plt.imshow(a,vmin=0, vmax=9, cmap='gray_r')
plt.colorbar()
Out[135]:
<matplotlib.colorbar.Colorbar at 0xcbc466be80>
In [136]:
plt.imshow(np.where(a<5,0,a),vmin=0, vmax=9, cmap='gray_r')
plt.colorbar()
Out[136]:
<matplotlib.colorbar.Colorbar at 0xcbc4715b38>
In [139]:
plt.imshow(np.where(a<5,0,a),vmin=4, vmax=7, cmap='gray_r')   #matplotlib은 최소값 최대값을 설정할수 있다. 설정하지 않으면 안에 있응 값 중에 최대 최소값을 기준으로 한다.
plt.colorbar()
Out[139]:
<matplotlib.colorbar.Colorbar at 0xcbc58e1668>

'beginner > 파이썬 기초' 카테고리의 다른 글

NumPy_기타  (0) 2019.02.19
NumPy_구간나누기  (0) 2019.02.18
NumPy_파일입출력  (0) 2019.02.14
NumPy_함수  (0) 2019.02.13
NumPy_사칙연산  (0) 2019.02.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함