반응형

분류 전체보기 502

[Pandas] 데이터프레임에서 열/행/그룹별/전체 최댓값, 최솟값 구하기(df.max(), df.min())

파이썬 판다스 max, min 탐색 방법 예제 파이썬에서 판다스 모듈을 활용하여 최댓값과 최솟값을 찾는 방법들을 특정 컬럼, 특정 row, 그룹별, 그리고 데이터프레임 전체에 대하여 예시를 들면서 다루어보도록 하겠습니다. 이해를 돕기 위하여, 아래와 같이 학생들의 과목별 점수가 담긴 데이터프레임 df를 가정하고 최댓값, 최솟값을 구하는 예시를 살펴보겠습니다. import pandas as pd a = {'이름' : ['AAA', 'BBB', 'CCC', 'DDD', 'EEE', 'FFF'], '반' : ['A', 'A', 'A', 'B', 'B', 'B'], \ '국어' : [70, 95, 80, 60, 75, 90], '영어' : [80, 85, 75, 90, 65, 70], '수학' : [100, 8..

Python/Pandas 2022.05.23

[Pandas] 데이터프레임에서 가장 많이(또는 적게) 등장한 값, 횟수 찾기

파이썬 판다스 최빈값, 등장 횟수 추출 방법 판다스 모듈을 이용하여 파이썬 데이터프레임에서 가장 많이 혹은 적게 등장한 값과 해당 값의 등장 횟수를 추출하는 방법을 정리해보도록 하겠습니다. 이해를 돕기 위하여, 아래와 같은 간단한 데이터프레임 df를 예시로 들어 설명하겠습니다. import pandas as pd a = {'A' : ['가', '가', '가', '나', '나', '다'], 'B' : [10, 5, 3, 5, 5, 8]} df = pd.DataFrame(a) df 1. value_counts를 이용한 방법 먼저, 각 값의 등장 횟수를 세어주는 value_counts를 이용하여 최빈값을 추출할 수 있습니다. A열을 기준으로 value_counts를 적용한 결과는 다음과 같습니다. df.val..

Python/Pandas 2022.05.23

저설탕 단백질 보충제 후기 : 에이치 프로틴 WPI 코코아맛

저당 프로틴 보충제 에이치 프로틴 WPI 후기 당류 함량이 매우 적은 단백질 보충제 중에서 이번에 제가 섭취해보았던 에이치 프로틴(코코아맛) WPI 제품에 대한 후기를 남겨보도록 하겠습니다. 에이치 프로틴 구성, 영양성분별 함량 우선, 해당 제품의 외형은 다음 사진과 같습니다. 코코아맛, 초코맛, 딸기맛 이렇게 3가지 종류의 제품이 있었는데 저는 이전에 먹던 다른 제품이 초코맛이었던 관계로 이번에는 코코아맛 제품을 섭취해보았습니다. 용량은 1kg이었으며, 약 30회 이상 섭취가 가능한 양인 듯 합니다. 이 제품의 영양성분표는 아래와 같았습니다. 1회 섭취량인 2스푼(30g) 기준 124 칼로리 정도였으며, 당류는 0g으로 표시가 가능할 정도의 무설탕에 가까웠습니다. 단백질의 함량은 26g으로 높은 편으로..

상품 리뷰 2022.05.22

[C언어] 구조체 struct 선언, 멤버 변수 할당 및 접근 방법

C언어 구조체 선언 및 멤버 다루기 C언어에서 struct를 통한 구조체 객체를 선언해보고 구조체 내 멤버 변수를 할당하고 접근하는 방법에 대해서 살펴보도록 하겠습니다. 구조체란? 먼저, 구조체란 객체들이 특정 종류의 속성을 공통적으로 보유할 때, 해당 속성들을 객체 내에 종속시켜 한 묶음 단위의 형태로 선언하는 객체를 의미합니다. 예를 들어, '책'이라는 객체는 공통적으로 저자, 제목, 가격, 페이지 수 등의 속성을 공유합니다. 따라서, 책이라는 객체를 선언할 때 위의 속성들을 묶어서 한 단위처럼 취급한다면 가장 비싼 책을 뽑거나, 특정 저자의 책 제목 등을 가져올 때 유용하게 사용할 수 있을 것입니다. 구조체 struct 선언 방법, 멤버 변수란? 이름, 가격 및 카테고리 정보를 가지는 '상품'이라는..

C & C++ 2022.05.22

파이썬 2차원 배열 선언, 값 추출/변경, 정렬(feat. 리스트, 넘파이 배열)

Python 2차원 array 다루기 예제(리스트 vs np.array) 파이썬에서 행렬 형태의 2차원 배열을 선언해보고 값을 추출/변경하며 내부 배열을 기준으로 정렬하는 방법들에 대해서 리스트를 활용한 방법과 Numpy array를 활용한 경우로 나누어 다루어보도록 하겠습니다. 1. 리스트를 활용한 2차원 배열(이중 리스트) 2차원 리스트 배열 선언 리스트에서는 2차원 배열을 선언할 때, 이중 for문을 사용하는 것이 가장 편리합니다. 바깥 for문에서 내부 배열의 리스트를 추가해주고 안쪽 for문에서는 각 내부 배열에 새로운 값을 추가해주는 방식입니다. 참고로, 각 내부 배열의 원소 개수가 모두 같지 않아도 됩니다. 모든 원소가 0인 4 * 3 크기의 배열 선언 예시는 아래와 같습니다. arr = [..

[Pandas] 파이썬 데이터프레임 행/열 복사(복제) 방법

파이썬 판다스 row/column 복사하기 파이썬 판다스 모듈에서 데이터프레임의 특정 행, 열을 복제하는 방법에 대해서 정리해보도록 하겠습니다. 예시로, 아래의 데이터프레임이 df라는 변수에 저장된 상황을 가정하고 결과를 살펴보겠습니다. import pandas as pd a = {'A' : [111, 222, 333, 444, 555, 666], 'B' : ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff']} df = pd.DataFrame(a) df 행 1개 복제 행 1개를 복사하여 맨 아래의 위치에 붙이는 방법은 df.loc[인덱스]를 이용하여 행 1개를 가져온 뒤, df.append를 사용하여 맨 뒤의 위치에 복제된 행을 이어 붙이면 됩니다. 2번 인덱스에 해당하는 행을 ..

Python/Pandas 2022.05.20

파이썬에서 모듈의 코드, 저장 경로와 내장 함수의 코드를 확인하는 방법

Python 라이브러리 코드/py 파일 위치, 내장 함수 코드 확인 파이썬에서 import한 모듈의 소스 코드와 코드 파일이 저장된 경로를 확인하고 내장 함수의 소스코드(파이썬 구현 코드)를 확인할 수 있는 방법을 살펴보도록 하겠습니다. 모듈 소스 코드 확인 : inspect.getsource() inspect 라이브러리의 getsource 함수를 통하여 모듈의 소스 코드를 살펴볼 수 있습니다. 만일, 해당 모듈의 설치가 필요하다면 !pip install inspect 명령어를 통하여 설치해주세요. 예시로, random 라이브러리의 소스 코드를 출력하는 예시 코드는 아래와 같습니다. import inspect import random codes = inspect.getsource(random) print..

Python/Utils 2022.05.20

C언어 함수 선언 방법 경우의 수 정리(input, return 타입별)

C언어 function 선언 방법 예제 C언어에서 함수를 선언하는 방법을 input 자료와 return되는 자료의 유형에 따라 분류하여 정리해보도록 하겠습니다. 기본적으로 C언어 함수 선언 코드의 틀은 다음과 같이 구성됩니다. 반환자료형 함수이름(input1자료형 input1이름, input2자료형 input2이름, ...){ ~함수 코드~ return 반환값; } 이제 반환자료형과 input자료형의 유형에따라 함수 선언 방법의 예시를 살펴보겠습니다. 1. input과 return 모두 없는 경우 가장 간단한 경우로, input 자료 없이 호출되고 반환 값도 없는 경우입니다. 반환자료형은 void로 선언하며, input 칸은 비워도되고, void로 설정해도 무관합니다. return 부분은 생략해도 좋고,..

C & C++ 2022.05.18

[Pandas] 파이썬 데이터프레임 값 변경/대체 방법 정리

파이썬 판다스 값 바꾸기, 수정 방법 예제 Pandas 라이브러리의 데이터프레임에서 원하는 부분의 값을 변경, 대체하는 여러 가지 방법들을 정리해보도록 하겠습니다. 이해를 돕기 위하여, 아래의 데이터프레임을 예시로 값이 대체된 결과를 보여드리겠습니다. (앞의 코드 수행 결과에 누적된 변경 결과를 첨부할 예정이니 참고해주세요.) import pandas as pd a = {'A' : [1, 2, 3, 4, 5, 6], 'B' : [10, 20, 30, 40, 50, 60], 'C' : [100, 200, 300, 400, 500, 600]} df = pd.DataFrame(a) df 값 1개만 변경 가장 간단한 경우로 원하는 값 1개를 수정하는 예시를 먼저 살펴보겠습니다. df.loc[행의 인덱스, 열 이..

Python/Pandas 2022.05.18

파이토치에서 모델 학습이 되지 않는 경우 원인 정리(파라미터가 그대로인 경우)

Pytorch gradient가 흐르지 않는 경우 원인과 해결법 파이토치 모듈을 이용하여 모델을 학습하는 과정에서 train 과정이 진행되는 것처럼 보여도 실제로는 파라미터가 업데이트되지 않고 학습이 안되는 경우가 있습니다. 이번 글에서는 제가 겪었던 원인을 바탕으로 모델 학습이 되지 않을 때 의심할만한 원인 3가지 정도를 간략하게 정리해보도록 하겠습니다. 1. 모델의 layer freeze 여부 체크 모델의 각 layer의 requires_grad 속성을 확인하여 해당 값이 True로 설정되어있는지를 확인해야 합니다. 이를 확인할 수 있는 방법의 코드는 아래와 같습니다. # 각 layer의 requires_grad가 True인지 확인 for param in model.parameters(): print..

Python/Debugging 2022.05.17
반응형