반응형

분류 전체보기 502

[Pandas] 판다스 설치 / 버전 확인 / 버전 변경(업데이트, 다운그레이드) 방법 정리

판다스 모듈 설치, 버전 체크 및 변경 pandas 라이브러리를 install하는 명령어를 알아보고 설치된 판다스 모듈의 version을 확인하는 방법과 해당 모듈을 업그레이드 및 다운그레이드 하는 방법에 대하여 정리해보도록 하겠습니다. 판다스 설치 방법 pip을 이용하여 쉽게 pandas 모듈의 설치가 가능합니다. 설치 명령어의 예시는 아래와 같습니다.(기본 / 버전 지정 예시) # 설치 기본 명령어 !pip install pandas # 버전 지정 설치 명령어(1.3.5 버전 지정 예시) !pip install pandas==1.3.5 판다스 버전 체크 방법 설치된 pandas 모듈의 version을 확인하는 방법은 라이브러리 import 후 __version__ 속성을 통해서 확인해주시면 됩니다. ..

Python/Pandas 2022.08.15

[C언어] 배열 내 특정 값 포함 여부 / 원소 위치 인덱스 찾기 구현

C언어 array 원소 존재 여부, 인덱스 번호 탐색 예제 C언어에서 배열 내에 특정 원소가 포함되어 있는지 여부를 탐색하거나 값이 들어있는 위치의 인덱스 번호를 가져오는 방법의 예시를 다루어 보겠습니다. 배열 안에 값이 포함되어 있는지 여부 반환 C언어에서 배열 내에 특정 원소가 들어있는지에 대한 정보를 확인하기 위해서는 배열, 배열 크기 그리고 찾기를 원하는 값을 input으로 받은 뒤, for문을 통해서 값 일치 여부를 일일이 확인하는 식으로 구현해야 합니다. 정수 배열 arr에 대하여 val 값의 여부를 찾는 isin 함수의 구현 예시는 다음과 같습니다. // input : 배열 arr, 배열 크기 size 그리고 찾을 값 val int isin(int* arr, int size, int val)..

C & C++ 2022.08.14

[Pytorch] 텐서를 넘파이 배열, 리스트로 변환하는 방법 정리

파이토치 tensor를 numpy array나 list로 바꾸기 파이썬 파이토치에서 tensor 자료형을 넘파이 배열 또는 리스트 자료형으로 변환하는 방법에 대하여 케이스별로 정리해보도록 하겠습니다. 1. 기본 텐서의 경우 : numpy() / tolist() 먼저, grad 정보가 없고 gpu에 선언되지 않은 가장 기본적인 텐서의 경우입니다. 아래와 같은 예시의 tensor를 형변환해보도록 하겠습니다. data1 = torch.randn(3, 2) data1 # 출력 결과 tensor([[-0.2370, -1.4314], [-0.7539, 0.5552], [-1.1405, -0.4047]]) 넘파이 배열 자료형으로 바꾸려면 tensor.numpy() 형태로 지정해주시면 됩니다. data1.numpy()..

Python/Pytorch 2022.08.12

[OpenCV] 파이썬 사물 인식(Object Detection) 실습 코드 예제

Python OpenCV object detection example 파이썬에서 OpenCV의 기능을 활용하여 이미지 내 사물 검출 결과를 쉽게 반환받을 수 있는 방법을 예시를 통해서 간략하게 정리해보도록 하겠습니다. 먼저, 이번 예제에서 사용할 이미지 파일을 불러와 출력해보도록 하겠습니다. (이미지의 출처는 pixabay에서 가져왔습니다.) from IPython.display import Image, display path = "cat_dog.jpg" # 사진 파일의 디렉토리 display(Image(filename = path)) 이제 강아지와 고양이가 여러 마리씩 있는 위의 이미지 파일에서 dog, cat 그림의 위치를 인식하여 해당 위치 부분에 직사각형 모양의 box를 label 이름과 함께 그..

Python/Vision Code 2022.08.11

개발자들을 위한 소셜 플랫폼 : 긱하우스(Geek Haus)

아고라스 긱하우스 브랜드 소개 IT 개발자분들을 위한 네트워크를 형성할 수 있으며, 또 프로그래밍을 위한 영어 공부 교재를 출판하며 글로벌 IT 인재로의 성장을 돕는 플랫폼인 긱하우스에 대하여 소개해보도록 하겠습니다. 긱하우스란? Geek Haus는 'geek들의 놀이터'라는 의미에 알맞게 IT개발자 등의 재능 있는 geek들이 함께 모여 성장하고 글로벌 진출까지 도울 수 있게 하려고 아고라스에서 만들어낸 신선한 형태의 플랫폼입니다. 긱하우스의 공식 사이트는 해당 링크(https://www.geekhaus.club/)로 접속할 수 있습니다. 긱하우스 - 스마트한 Geek들의 놀이터 IT와 예술에 진심인 긱들과 함께 어울리고, 성장하세요! Geek Haus for 개발자, 아티스트, 개발자영어, NFT아트..

2022.08.11

[Matplotlib] 파이썬 그래프 회전 방법 예제

Python plt graph rotation code 파이썬에서 matplotlib을 통하여 그린 그래프를 회전하는 방법을 알아보도록 하겠습니다. 먼저, 아래와 같이 간단한 선 그래프 및 산점도가 있다고 가정해보겠습니다. import matplotlib.pyplot as plt plt.plot(range(1, 6), range(1, 6), color = 'blue') plt.scatter([1, 2, 3, 4, 5], [2, 5, 4, 1, 3], color = 'red') plt.show() 그래프 회전하기 코드 해당 그래프를 원하는 각도로 회전하기 위해서는 아래 코드의 transdata와 rotote 부분을 지정하고, 회전을 원하는 그래프의 transform 인자에 rotate + transdata..

Python/Matplotlib 2022.08.09

[Numpy] 파이썬 배열 회전 함수 : np.rot90

Python 넘파이 배열 회전 함수 사용법 파이썬에서 배열을 회전한 결과를 쉽게 반환받을 수 있는 넘파이 모듈의 rot90 함수의 사용 방법에 대하여 간략하게 다루어보겠습니다. 참고로, 해당 글은 numpy.rot90 함수의 공식 document의 내용을 기반으로 작성하였습니다. 2차원 배열 예시 np.rot90 메소드의 사용법은 (input array, 회전 횟수)로 인자를 지정하는 형태로 간단합니다. 이 때, 회전의 기준은 횟수 1회당 반시계 방향으로 90도씩 회전하도록 되어있습니다. (즉, 4로 나눈 나머지만 중요하며, 0, 4 등 숫자 지정 시 기존 array가 그대로 반환됩니다.) import numpy as np a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]..

Python/Numpy 2022.08.08

TypeError: Object of type int64 is not JSON serializable 해결

JSON 관련 TypeError 디버깅(return 값 인식 오류) 프로그래머스 등의 코딩 테스트 연습 사이트에서의 답안 제출 과정과 같이 return 결과를 다른 곳에 보낼 때 발생할 수 있는 TypeError 종류에 대한 원인과 해결법을 살펴보도록 하겠습니다. 오류 상황 예시 및 원인 예를 들어, 두 정수 리스트 간의 내적값을 구하는 문제에 대하여 아래처럼 답안을 제출한 경우 return되는 값은 분명히 정답으로 제출되는 듯 하지만 아래와 같은 에러가 발생합니다. (에러 메시지 : TypeError: Object of type int64 is not JSON serializable) 예상되는 원인으로는 np.dot 함수의 출력 결과는 numpy.int64 자료형인데 기본 int 자료형과는 다르게 해당..

Python/Debugging 2022.08.07

파이썬 pop의 시간 복잡도에 대한 고찰(맨 뒤, 중간, 맨 앞 위치 비교 및 remove/del과의 비교)

Python pop() 함수의 시간 복잡도는 O(1)인가? 파이썬으로 원소를 제거하는 pop 함수의 시간 복잡도는 흔히 O(1)으로 알려져있지만 이 사항에는 맨 뒤 원소를 제거하는 상황이라는 조건이 반드시 필요합니다. 이번 글에서는 이에 대한 고찰을 간단한 예시 비교를 통하여 진행해보도록 하겠습니다. 1. 맨 뒤 위치 원소 pop : O(1) pop 함수를 pop()처럼 default 인자로 사용할 경우 맨 뒤 위치(-1번 인덱스)가 자동으로 지정되어 사용되는데, 이 경우는 맨 뒤의 원소만 제거하고 기존 원소들은 그대로 놓아둘 수 있으므로 O(1)의 시간 복잡도가 맞습니다. 1천만개의 원소를 가진 리스트에서 1만번 pop을 진행시켜본다면 실제로 아래와 같이 약 0.002초 만에 완료된 모습을 볼 수 있습..

파이썬 이미지 데이터 증강 모듈 : imgaug

Python image data augmentation library imgaug 여러 종류의 이미지 데이터 augmentation을 쉽고 편리하게 수행할 수 있는 imgaug 라이브러리에 대한 소개 및 간단한 예제 코드를 살펴보도록 하겠습니다. imgaug 모듈이란? imgaug 라이브러리에서는 상당히 다양한 종류의 image data augmentation을 디테일한 옵션을 지정할 수 있게하여 수행해주며, 여러 종류의 데이터 증강 기법을 한 이미지 내에 중첩하여 적용하는 과정마저도 직관적이고 손쉽게 진행할 수 있게 도와줍니다. 공식 github 페이지에 상세한 사용법과 예제들이 자세히 안내되어 있는데 해당 페이지의 링크는 아래와 같습니다. GitHub - aleju/imgaug: Image augme..

Python/Vision Code 2022.08.02
반응형