Pandas DataFrame DataFrame.median() 함수

Jinku Hu 2023년1월30일
  1. pandas.DataFrame.median()의 구문 :
  2. 예제 코드: 열 축을 따라 중앙값을 찾는DataFrame.median()메서드
  3. 예제 코드: 행 축을 따라 중앙값을 찾는DataFrame.median()메서드
  4. 예제 코드: NaN 값을 무시하고 중앙값을 찾는DataFrame.median()메서드
Pandas DataFrame DataFrame.median() 함수

Python Pandas DataFrame.median() 함수는 DataFrame 객체 요소의 중앙값을 계산합니다. 지정된 축.

중앙값은 mean이 아니라 숫자 목록에있는 값의 중간입니다.

Pandas DataFrame 중앙값

pandas.DataFrame.median()의 구문 :

DataFrame.median(axis=None, skipna=None, level=None, numeric_only=None, **kwargs)

매개 변수

axis 행(axis=0) 또는 열(axis=1)을 따라 중앙값을 찾습니다.
skipna 부울. NaN 값 (skipna=True)을 제외하거나NaN 값 (skipna=False)을 포함합니다.
level 축이 MultiIndex인 경우 특정 수준과 함께 계산
numeric_only 부울. numeric_only=True의 경우float,intboolean 열만 포함합니다.
**kwargs 함수에 대한 추가 키워드 인수입니다.

반환

level이 지정되지 않은 경우 요청 된 축에 대한 값의 중앙값의 Series를 반환하고, 그렇지 않은 경우 중앙값의 DataFrame을 반환합니다.

예제 코드: 열 축을 따라 중앙값을 찾는DataFrame.median()메서드

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, 5, 10],
                   'Y': [4, 3, 8, 2, 9]})
print("DataFrame:")
print(df)

medians=df.median()
print("medians of Each Column:")
print(medians)

출력:

DataFrame:
    X  Y
0   1  4
1   2  3
2   7  8
3   5  2
4  10  9
medians of Each Column:
X    5.0
Y    4.0
dtype: float64

XY의 중앙값을 계산하고 마지막으로 각 열의 중앙값이있는Series 객체를 반환합니다.

Pandas에서DataFrame의 특정 열의 중앙값을 찾으려면 해당 열에 대해서만median()함수를 호출합니다.

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, 5, 10],
                   'Y': [4, 3, 8, 2, 9]})
print("DataFrame:")
print(df)

medians=df["X"].median()
print("medians of Each Column:")
print(medians)

출력:

DataFrame:
    X  Y
0   1  4
1   2  3
2   7  8
3   5  2
4  10  9
medians of Each Column:
5.0

DataFrameX열 값의 중앙값 만 제공합니다.

예제 코드: 행 축을 따라 중앙값을 찾는DataFrame.median()메서드

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, 5, 10],
                   'Y': [4, 3, 8, 2, 9],
                   'Z': [2, 7, 6, 10, 5]})
print("DataFrame:")
print(df)

medians=df.median(axis=1)
print("medians of Each Row:")
print(medians)

출력:

DataFrame:
    X  Y   Z
0   1  4   2
1   2  3   7
2   7  8   6
3   5  2  10
4  10  9   5
medians of Each Row:
0    2.0
1    3.0
2    7.0
3    5.0
4    9.0
dtype: float64

모든 행의 중앙값을 계산하고 마지막으로 각 행의 중앙값이있는Series 객체를 반환합니다.

Pandas에서DataFrame의 특정 행의 중앙값을 찾으려면 해당 행에 대해서만median()함수를 호출합니다.

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, 5, 10],
                   'Y': [4, 3, 8, 2, 9],
                   'Z': [2, 7, 6, 10, 5]})

print("DataFrame:")
print(df)

median=df.iloc[[0]].median(axis=1)
print("median of 1st Row:")
print(median)

출력:

DataFrame:
    X  Y   Z
0   1  4   2
1   2  3   7
2   7  8   6
3   5  2  10
4  10  9   5
median of 1st Row:
0    2.0
dtype: float64

DataFrame의 첫 번째 행 값의 중앙값 만 제공합니다.

색인을 기반으로 행을 선택하기 위해iloc 메소드를 사용합니다.

예제 코드: NaN 값을 무시하고 중앙값을 찾는DataFrame.median()메서드

skipna 매개 변수의 기본값 즉skipna=True를 사용하여NaN 값을 무시하여 지정된 축을 따라DataFrame의 중앙값을 찾습니다.

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, None, 10, 8],
                   'Y': [None, 3, 8, 2, 9, 6],
                   'Z': [2, 7, 6, 10, None, 5]})

print("DataFrame:")
print(df)

median=df.median(skipna=True)
print("medians of Each Row:")
print(median)

출력:

DataFrame:
      X    Y     Z
0   1.0  NaN   2.0
1   2.0  3.0   7.0
2   7.0  8.0   6.0
3   NaN  2.0  10.0
4  10.0  9.0   NaN
5   8.0  6.0   5.0
medians of Each Row:
X    7.0
Y    6.0
Z    6.0
dtype: float64

skipna=True를 설정하면 데이터 프레임의NaN을 무시합니다. NaN값을 무시하여 열 축을 따라 DataFrame의 중앙값을 계산할 수 있습니다.

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, None, 10],
                   'Y': [5, 3, 8, 2, 9],
                   'Z': [2, 7, 6, 10, 4]})

print("DataFrame:")
print(df)

median=df.median(skipna=False)
print("medians of Each Row:")
print(median)

출력:

DataFrame:
      X  Y   Z
0   1.0  5   2
1   2.0  3   7
2   7.0  8   6
3   NaN  2  10
4  10.0  9   4
medians of Each Row:
X    NaN
Y    5.0
Z    6.0
dtype: float64

여기서 우리는 열XNaN 값이 존재하므로X 열의 중앙값에 대한NaN 값을 얻습니다.

작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

관련 문장 - Pandas DataFrame