Python/Python
-
Python (알고리즘 백준 10871)Python/Python 2020. 1. 30. 20:16
X보다 작은 수 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 256 MB 59411 33573 29052 57.756% 문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. 출력 X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 예제 입력 1 복사 10 5 1 10 4 9 2 3 8 5 7 6 예제 출력 1 복사 1 4 2 3 a, b = input().split(..
-
Python NumPy (8. NumPy 최대 최소 값 찾기)Python/Python 2020. 1. 22. 15:06
import numpy as np big_array = np.random.random(1000000) # 배열의 최대값 최소값 찾기 np.min(big_array) , np.max(big_array) M = np.random.random((4,4)) print(M) #2차원 배열의 모든값을 더 해줌 M.sum() #각 열의 최소값을 찾을 때 M.min(axis=0) CSV로 미국 역대 대통령의 키들을 가지고 누가 몇 번째인지 평균 신장은 무엇인지 하는 것을 해보겟다. import pandas as pd data = pd.read_csv('C:\/president_heights.csv') heights = np.array(data['height(cm)']) print(heights) CSV 파일에 있는 대..
-
Python NumPy(7. Sum 과 np.sum 차이 )Python/Python 2020. 1. 21. 14:19
import numpy as np #배열의 값의 합 구하기 L = np.random.random(100) sum(L) np.sum(L) 두 개의 코드는 같은 값을 출력한다 그렇다면 아래의 np.sum(L)은 뭐하러 더 귀찮게 쓰는것인가? 그이유는 간단하다 컴파일에 시간에 차이가 있기 때문이다. big_array = np.random.rand(10000000) %timeit sum(big_array) %timeit np.sum(big_array) 이 코드는 랜덤한 배열을 더하는 것이다 한가지는 기본 산술연산자 sum 과 하는 numpy 라이브러리에 있는 np.sum 함수다. 이 둘에 실행결과는 Sum 도 오래걸린편은 아니지만 np.sum이 월등 하게 빠른편을 보여준다 . Python 데이터 사이언스 분야에..
-
Python NumPy(6. NumPy ufuncs연산)Python/Python 2020. 1. 21. 14:04
파이썬은 동적인 언어이기 때문에 타입이 유연하다 이는 효율적인 머신 코드로 컴파일될 수 없다는 뜻이다. 파이썬은 수많은 작은 연산이 반복되는 상황에서 확연히 느리다. 이러한 연산 속도를 더 빠르게 하기 위해서 필요한것이 바로 ufuncs 연산이다. #Numpy ufuncs는 파이썬 기본 산술연산자를 사용하기에 자연스럽게 사용할 수 있다. x = np.arange(4) print('x =' , x) print('x+5 =' , x+5) print('x-5 =' , x-5 ) print('x*2 =' , x*2) print('x/2 =' , x/2) print('x//2 =' , x//2) #배열안에 인자값에 연산한것을 확인할 수 있다. #음수를 만드는 단항 ufuncs와 지수 연산자 ** , 나머지 연산자..
-
Python Numpy ( 5. 배열 연결 및 분할)Python/Python 2020. 1. 20. 19:05
배열 연결 Numpy 에서는 주로 np.concatenate , np.vstack , np.hstack 루틴을 이용해 두 배열을 결합하거나 연결한다 여기서 보다시피 np.concatenate 는 튜플이나 배열의 리스트를 첫 번째 인수로 취한다. #배열 연결 #Numpy에서는 주로 np.concatenate , np.vstack np.hstack 루틴을 이용해 두 배열을 결합하거나한다. x= np.array([1,2,3]) y= np.array([3,2,1]) np.concatenate([x,y]) # 3개 이상도 가능하다 z = [99,999,9999] print(np.concatenate([x,y,z])) grid = np.array([[1,2,3] , [4,5,6]]) # 첫 번째 축을 따라 연결 n..
-
Python Numpy (4. Numpy 배열 인덱싱)Python/Python 2020. 1. 20. 18:53
import numpy as np np.random.seed(0) #재현 가능성을 위한 시드 값 x1 = np.random.randint(10,size=6) # 1차원 배열 x2 = np.random.randint(10,size=(3,4)) # 3x4 2차원 배열 x3 = np.random.randint(10,size=(3,4,5)) # 3x4x5 3차원 배열 각 배열은 속성으로 ndim(차원의 개수) , shape(각 차원의 크기) , size ( 전체 배열 크기)를 가지고있다. #각 배열은 속성으로 ndim(차원의 갯수 ) , shape(각 차원의 크기 ) , size(전체 배열의 크기) 를 가지고있다 print('x3 ndim: ' ,x3.ndim) print('x3 shape : ' ,x3.sha..
-
Python Numpy 모듈 (2. Numpy배열 생성하기)Python/Python 2020. 1. 20. 18:26
Python 에 고정적인 배열로는 Array 라는 배열이 존재한다 . import array L= list(range(10)) A = array.array('i' ,L) A 여기서 i 는 내용이 정수임을 가리키는 타입 코드이다. 그러나 훨씬 더 유용한것은 Numpy 패키지의 ndarray 객체다 파이썬의 array 객체는 배열 기반의 데이터에 효율적인 저장소를 제공하는 반면 NumPy는 그 데이터에 효율적인 연산을 추가한다 이러한 연산에 대해서는 차후 게시글로 기제할것이고 이번 게시물에서는 NumPy 배열을 생성하는 여러한 벙법을 살펴 볼것이다. import numpy as np 일단 numpy 모듈을 import 해주고 as np