Pandas 데이터프레임을 그룹 크기 기준으로 내림차순 정렬하기 Pandas에서 데이터프레임을 그룹화할 때는 groupby() 함수를 사용합니다. 그룹화된 결과를 내림차순으로 정렬하려면 sort_values()를 활용하고, 각 그룹에 속한 요소의 개수(그룹 크기)를 구할 때는 size() 메서드를 사용합니다. 내림차순 정렬을 적용하려면 sort_values() 호출 시 다음과 같이 옵션을 지정합니다. ascending=False 1단계: 데이터프레임 생성 먼저 예제로 사용할 Pandas 데이터프레임을 만들어 보겠습니다. import
문자열에서 특정 부분 문자열이 나타나는 모든 위치를 찾아야 할 때가 있습니다. 이럴 때 리스트 컴프리헨션(list comprehension)과 startswith() 메서드를 함께 사용하면 아주 간단하게 해결할 수 있습니다.예제 코드다음은 문자열 안에서 부분 문자열이 등장하는 모든 위치(인덱스)를 구하는 예제입니다.my_string = Python learn code test fun amazing object oriented sub_string = object print(The string is : ) print(my_strin
리스트 안에 여러 개의 딕셔너리가 들어 있을 때, 특정 값이 존재하지 않는(또는 조건에 부합하는) 딕셔너리를 제거해야 하는 경우가 있습니다. 이럴 때는 간단한 반복문과 del 연산자, 그리고 break 문만 있으면 손쉽게 처리할 수 있습니다.예제아래 예제를 통해 실제 동작 과정을 살펴보겠습니다.my_list = [{code : 1, fun : learn}, {code : 2, fun : code}, {code : 3, fun : test}, {code : 4, fun : teach}, {code : 4, fun
개요Python 프로그래밍에서 리스트(list) 데이터를 활용해 딕셔너리(dictionary)를 만들어야 하는 경우가 자주 있습니다. 이럴 때 dict() 메서드로 빈 딕셔너리를 생성하고, 간단한 반복문과 setdefault() 메서드를 조합하면 원하는 구조의 딕셔너리를 손쉽게 구성할 수 있습니다.예제 코드다음은 리스트에서 딕셔너리를 생성하는 전체 과정을 보여주는 예제입니다.my_dict = dict() print(An empty dictionary has been created) my_value_list = [15, 14, 13,
구분 기호(delimiter)가 포함된 문자열 리스트를 튜플 리스트로 변환해야 하는 경우가 종종 있습니다. 이럴 때는 구분 기호 값 K를 설정한 뒤, 리스트 컴프리헨션(list comprehension)과 split 메서드를 함께 사용하면 간단하게 처리할 수 있습니다.예제아래는 실제 동작 과정을 보여주는 예시입니다.my_list = [33-22, 13-44-81-39, 42-10-42, 36-56-90, 34-77-91] print(The list is : ) print(my_list) print(The sorted list
Pandas에서 두 개의 DataFrame 객체가 서로 동일한지 확인하려면 equals() 메서드를 사용합니다. 이 메서드는 두 데이터프레임의 형태(shape), 인덱스, 열 이름, 그리고 모든 요소의 값까지 완전히 일치할 때 True를 반환하고, 하나라도 다르면 False를 반환합니다. DataFrame 생성하기 먼저 Car와 Reg_Price 두 개의 열을 가진 첫 번째 데이터프레임을 만들어 보겠습니다. dataFrame1 = pd.DataFrame( { Car: [BMW, Lexus, Audi, Mustang,
파이썬에서 하나의 문자열을 행당 K개의 문자를 가지는 행렬(매트릭스) 형태로 변환해야 하는 경우가 있습니다. 이를 위해서는 문자열과 K 값을 매개변수로 받는 함수를 정의하고, 간단한 반복문과 나머지 연산자(%), 그리고 append() 메서드를 활용하면 됩니다.동작 원리핵심 아이디어는 다음과 같습니다.인덱스가 K의 배수일 때마다 새로운 행을 시작합니다.현재 인덱스부터 K개의 문자를 잘라내어(substring) 한 행으로 만듭니다.각 행의 문자들을 공백으로 구분하여 출력합니다.예제 코드아래는 실제 구현 예시입니다.print(함수 정의
두 개의 DataFrame에서 공통 행을 추출하려면 Pandas의 concat() 함수를 활용할 수 있습니다. 이 방법은 두 데이터프레임을 하나로 합친 후, 각 행이 몇 번 나타나는지 세어 2번 이상 등장하는 행(즉, 양쪽에 모두 존재하는 행)을 찾아내는 원리로 동작합니다.1단계: 첫 번째 DataFrame 생성먼저 두 개의 컬럼을 가진 첫 번째 DataFrame을 만들어 보겠습니다.dataFrame1 = pd.DataFrame( { &
Pandas DataFrame에서 합계(sum)를 기준으로 특정 행을 필터링하는 방법을 학생 점수 예제를 통해 살펴보겠습니다.예제 시나리오는 다음과 같습니다. 3명의 학생이 있고, 각 과목별로 세 학생의 점수 합계가 200점을 초과하는지 확인해야 합니다. 만약 어떤 행(레코드)에서 세 학생 점수의 총합이 200 이하라면 해당 행은 결과에서 제외됩니다. 즉, sum() 함수를 활용해 조건에 맞는 행만 남기는 필터링 작업입니다.1단계: 샘플 DataFrame 생성먼저 3명의 학생 점수를 담은 3개의 열(column)로 구성된 DataF
Pandas 데이터프레임을 그룹 크기별로 오름차순 정렬하는 방법Pandas에서 데이터프레임을 그룹화하려면 groupby() 함수를 사용합니다. 그룹화된 결과를 오름차순으로 정렬하려면 sort_values() 함수를 함께 활용하면 되며, 각 그룹의 크기(데이터 개수)는 size() 메서드로 확인할 수 있습니다.오름차순 정렬을 적용하려면 sort_values()에 다음 옵션을 지정합니다.ascending=True1단계: 데이터프레임 생성먼저 예제로 사용할 Pandas 데이터프레임을 만들어 보겠습니다.dataFrame = pd.DataF
Pandas에서 다중 레벨(multi-level) 열 인덱스를 가진 데이터프레임에서 특정 레벨을 제거하려면 columns.droplevel() 메서드를 사용합니다. 또한 MultiIndex.from_tuples()를 활용하면 튜플 기반으로 열 방향(column-wise)의 멀티인덱스를 손쉽게 생성할 수 있습니다.이 글에서는 멀티인덱스 데이터프레임을 직접 만들어 보고, 열 인덱스에서 원하는 레벨을 삭제하는 전체 과정을 단계별로 살펴보겠습니다.1단계: 열 방향 멀티인덱스 생성pd.MultiIndex.from_tuples()를 사용해 열
Pandas 데이터프레임의 멀티레벨(다중 계층) 열 인덱스에서 여러 레벨을 삭제하려면 columns.droplevel() 메서드를 반복해서 호출하면 됩니다. 열 방향(column-wise) 인덱스는 pd.MultiIndex.from_tuples()를 사용해 생성합니다. 1단계: 열 방향으로 인덱스 생성하기 먼저 from_tuples()로 열 방향의 멀티인덱스를 만듭니다. items = pd.MultiIndex.from_tuples([(Col 1, Col 1, Col 1),
공통 열(Column)을 기준으로 두 개의 Pandas 데이터프레임을 병합하려면 merge() 함수를 사용하고, on 매개변수에 해당 열 이름을 지정하면 됩니다. 일치하지 않는 값에 대해 NaN을 설정하려면 how 매개변수를 left 또는 right로 지정합니다. 이는 왼쪽 또는 오른쪽 데이터프레임을 기준으로 병합한다는 의미입니다.1단계: pandas 라이브러리 임포트먼저 별칭(alias)을 사용하여 pandas 라이브러리를 임포트합니다.import pandas as pd2단계: 첫 번째 데이터프레임 생성차량 정보를 담고 있는 Da
Pandas에서 두 개의 DataFrame을 하나로 합치려면 merge() 함수를 사용합니다. 이때 how 매개변수에 outer를 지정하면 외부 조인(Outer Join)이 수행되어 양쪽 DataFrame의 모든 행이 결과에 포함됩니다.how = outer1단계: Pandas 라이브러리 임포트먼저 pandas 라이브러리를 별칭(alias)과 함께 가져옵니다.import pandas as pd2단계: 첫 번째 DataFrame 생성차량 모델별 판매 대수 정보를 담은 DataFrame을 만들어 보겠습니다.dataFrame1 = pd.D
Pandas DataFrame에서 열 선택하기 Pandas DataFrame에서 특정 열(Column)을 선택하는 것은 데이터 분석 작업에서 가장 기본적이면서도 자주 사용되는 기능입니다. 가장 간단한 방법은 대괄호([])를 사용하여 원하는 열 이름을 지정하는 것입니다. 기본 문법은 다음과 같습니다: dataFrame[ColumnName] 대괄호 안에 선택하고자 하는 열의 이름만 넣어주면 해당 열이 Series 형태로 반환됩니다. 1단계: 라이브러리 임포트 먼저 pandas 라이브러리를 임포트합니다: import pandas as
Pandas DataFrame에서 여러 행 선택하기Pandas의 DataFrame에서 여러 행(row)을 한 번에 선택하려면 슬라이싱 연산자 :를 활용하면 간단하게 처리할 수 있습니다. 이번 글에서는 슬라이싱뿐만 아니라 loc(레이블 기반)과 iloc(정수 위치 기반)을 이용한 행 선택 방법까지 예제와 함께 자세히 살펴보겠습니다.1. Pandas 라이브러리 가져오기가장 먼저 pandas 라이브러리를 관례적으로 사용되는 별칭 pd로 불러옵니다.import pandas as pd2. DataFrame 생성하기이번 예제에서는 인덱스로 w
Pandas DataFrame의 열을 쿼리하려면 query() 메서드를 사용하면 됩니다. 이 메서드는 지정한 조건에 맞는 레코드만 필터링하여 추출할 때 매우 유용합니다. 먼저 예제에 사용할 Pandas DataFrame을 생성해 보겠습니다.dataFrame = pd.DataFrame({"Product": ["SmartTV", "PenDrive", "Speaker", "Earphone"],"Opening_Stock": [300,
파이썬에서 특정 조건에 따라 두 개의 리스트에 담긴 요소들을 조합하거나 병합해야 할 때가 있습니다. 이럴 때 간단한 반복문과 제너레이터(yield) 키워드, 그리고 인덱싱을 함께 활용하면 원하는 결과를 손쉽게 얻을 수 있습니다. 예제 다음은 이를 구현한 예제입니다 − print("메서드 정의 시작") def merge_the_vals(my_list_1, my_list_2, K): index_1 = 0 index_2 = 0 while(index_1 < len(my_list_1)):
리스트에 요소를 지정한 횟수(K번)만큼 무작위로 삽입해야 하는 경우, 파이썬의 random 패키지에서 제공하는 다양한 메서드와 간단한 반복문을 활용하면 손쉽게 구현할 수 있습니다.이 글에서는 정렬된 숫자 리스트 안에 문자열 요소를 무작위 위치에 삽입하는 방법을 예제와 함께 살펴보겠습니다.예제 코드아래는 실제 동작 과정을 보여주는 예제입니다.import random my_list = [34, 12, 21, 56, 8, 9, 0, 3, 41, 11, 90] print(The list is : ) print(my_list) pri
리스트의 요소들을 숫자의 자릿수를 기준으로 정렬해야 하는 경우가 종종 있습니다. 이럴 때 파이썬에서는 max 함수와 더불어 sorted 메서드, lambda 함수, 그리고 문자열 메서드인 ljust를 활용하면 간단하게 해결할 수 있습니다. 예제 다음은 이를 구현한 예제입니다 − my_list = [4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1] print(The list is : ) print(my_list) print(The list after