Programming/Python

Programming/Python

넘파이 알고 쓰자 - 덧셈, 곱셈, 뺄셈(Sums, products, differences)

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - 쌍곡선 함수(Hyperbolic functions)에서는 넘파이에서 제공하는 쌍곡함수에 대해서 소개하였습니다. 오늘은 더 간단한 넘파이에서 제공하는 덧셈, 곱셈, 뺄셈를 할 수 있는 다양한 함수들을 소개해드리도록 하겠습니다. 여기서는 기존파이썬에서 제공하는 함수와 얼마나 많은 시간 차이가 나는지도 알아보도록 하겠습니다. 1. numpy.prod(a, axis=None) 가장 먼저 볼 함수는 곱셈 함수입니다. 기존의 파이썬과는 다르게 axis가 존재하여 원하는 축을 중심으로 계산을 수행하여 활용성이 좀 더 높은 것을 볼 수 있습니다. axis=None이라면 입력되는 넘파이 배열의 원소를 전부 곱하는 함수입니다. a = np.arange(1, 6) np.pro..

Programming/Python

넘파이 알고 쓰자 - 쌍곡선 함수(Hyperbolic functions)

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - 삼각 함수(Trigonometric functions)에 대해서 알아봤습니다. 오늘은 이에 이해서 쌍곡선 함수에 대해서 알아보도록 하죠. 기본적으로 쌍곡선 함수들의 정의는 아래와 같습니다. $$\sinh{x} = \frac{e^{x} - e^{-x}}{2}$$ $$\cosh{x} = \frac{e^{x} + e^{-x}}{2}$$ $$\tanh{x} = \frac{\sinh{x}}{\cosh{x}} = \frac{e^{x} - e^{-x}}{e^{x} + e^{-x}}$$ 위 정의를 보셨다면 오늘 볼 내용은 아주 쉽습니다!! 바로 그래프와 함께 실습을 진행해보도록 하겠습니다. 1. numpy.sinh(x), numpy.cosh(x), numpy.tanh(x..

Programming/Python

넘파이 알고 쓰자 - 삼각함수(Trigonometric functions)

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - 문자열 정보 추출을 마지막으로 지금까지 넘파이를 활용한 문자열 함수를 알아봤습니다. 오늘부터는 넘파이에서 제공하는 중요한 수학 함수에 대해서 알아보도록 하겠습니다. 그 시작은 간단한 삼각함수입니다. 1. numpy.sin(x), numpy.cos(x), numpy.tan(x) 먼저 고등학교 때부터 쉽게 접할 수 있는 sine, cosine, tangent 함수입니다. 더 이상 말하면 입아프겠죠? x는 넘파이 배열로 각 원소를 적용하는 함수에 따라서 sine, cosine, tangent로 변환해줍니다. 그림과 함께 보도록 하겠습니다. x = np.linspace(-5, 5, 100) sin = np.sin(x) cos = np.cos(x) plt.plot(..

Programming/Python

넘파이 알고 쓰자 - 문자열 정보 추출

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - 문자열 비교에 이어서 문자열이 가진 여러가지 정보를 추출하는 방법이 대해서 알아보도록 하겠습니다. 오늘이 넘파이와 문자열과 관련된 마지막 포스팅이 될 거 같습니다. 파이썬을 해보신분들은 알겠지만 문자열을 이용해서 다양한 작업을 합니다. 그 중에서 자주 사용되는 count 함수는 서브문자열의 개수를 문자열에서 counting 해줍니다. 또한 find 함수와 index 함수의 경우에는 특정 문자열의 위치를 알려주기도 합니다. 이뿐만 아니라 훨씬 더 다양한 문자열 정보를 추출해볼 수 있습니다. 예를 들어서 문자열이 숫자로 이루어져 있는 지, 소문자로 이루어져 있는 지, 대문자로 이루어져 있는 지와 같이 상세한 정보도 알아볼 수 있습니다. 이제부터 본격적으로 하나..

Programming/Python

넘파이 알고 쓰자 - 문자열 비교

안녕하세요. 지난 시간의 넘파이 알고 쓰자 - 문자열 연산 2에서는 몇 가지 문자열과 관련된 연산들에 대해서 추가적으로 알아보았습니다. 오늘은 이에 이어서 문자열을 비교해주는 몇 가지 함수에 대해서 알아보도록 하겠습니다. 1. numpy.char.equal(x1, x2), numpy.char.not_equal(x1, x2) 이 함수들은 이름에서 보이다 싶이 두 문자열을 구성하는 각 문자를 비교하는 연산입니다. 간단한 예시를 들어서 설명해보도록 하겠습니다. numpy_string1 = np.array([["Hello", "my", "name", "is", "jane"]]) numpy_string2 = np.array([["Hello", "his", "name", "is", "mike"]]) np.char...

Programming/Python

넘파이 알고 쓰자 - 문자열 연산 2

안녕하세요. 최근 바빠서 포스팅을 못했는 데 오랜만에 진행해보도록 하겠습니다. 지난 포스팅 넘파이 알고 쓰자 - 문자열 연산 1에서 기존 파이썬에서 존재하는 문자열 연산을 넘파이를 이용해서 처리하는 방법에 대해서 알아보았습니다. 나중에 대용량의 문자열을 처리할 때 넘파이를 이용해서 처리한다면 for loop를 이용해서 하나하나 처리하는 것보다 넘파이의 vectorization을 통해서 더 빠르게 처리할 수 있겠죠? 오늘 포스팅에서도 이어서 확인해보도록 하겠습니다. 1.numpy.char.join(sep1, seq2) 파이썬에서 join 함수를 기억하시나요? 파이썬에서 문자열 리스트가 주어졌을 때 이들을 어떤 값을 사이사이에 넣고 하나의 큰 문자열로 합치는 메서드였습니다. 예를 들어, 아래와 같습니다. a..

Programming/Python

넘파이 알고 쓰자 - 문자열 연산 1

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - Bit packing & output formatting에서는 마지막으로 몇 가지 남은 비트 연산에 대해서 알아보았습니다. 오늘은 넘파이에서도 문자열 연산을 할 수 있다는 것을 보여드리도록 하겠습니다. 다만, 넘파이에서는 문자열을 위한 함수를 굉장히 많이 지원하고 있기 때문에 조금씩 설명을 드리도록 하겠습니다. 오늘 설명드릴 함수들 중 몇 가지는 파이썬에서 기본적으로 제공하는 함수들이 있습니다. 이 함수들과 비교하면서 공부하시면 쉽게 이해하실 수 있습니다. 1. numpy.char.add(x1, x2) 이 함수는 기존 파이썬의 문자열끼리 더하는 + 연산과 완전히 동일한 함수입니다. 아래의 예제를 보면 쉽게 이해하실겁니다. 심지어 인수도 두 개의 문자열만을 ..

Programming/Python

넘파이 알고 쓰자 - Bit packing & output formatting

안녕하세요. 지난 포스팅의 넘파이 알고 쓰자 - Elementwise bit operations에 이어서 오늘은 다루지 못한 Bit packing과 output formatting에 대해서 다루도록 하겠습니다. 1. numpy.binary_repr(num, width=None) 이 함수는 십진수를 이진수로 변환하여 출력하는 아주 간단한 함수입니다. num에는 변환할 십진수가 들어가고 width에는 몇 비트로 표현할 것인지 적어주면 됩니다. np.binary_repr(3) # '11' np.binary_repr(3, width=3) # '011' np.binary_repr(3, width=4) # '0011' np.binary_repr(3, width=5) # '00011' 이와 같이 width를 바꾸게 ..

Johns Hohns
'Programming/Python' 카테고리의 글 목록 (3 Page)