Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

주어진 데이터 프레임의 각 열에서 두 번째로 낮은 값을 찾는 Python 코드 작성

<시간/>

데이터 프레임과 각 열에서 두 번째로 낮은 값에 대한 결과가 다음과 같다고 가정합니다.

Id       2
Salary 30000
Age    23

이 문제를 해결하기 위해 다음 단계를 따릅니다. -

해결책

  • 데이터 프레임 정의

  • 생성 람다 함수 내부에 df.apply() 함수를 설정하고 x와 같은 변수를 설정하여 모든 열에 액세스하고 표현식을 다음과 같이 확인합니다.

x.sort_values().unique()[1], axis=0은 다음과 같이 두 번째로 낮은 값을 반환합니다.

result = df.apply(lambda x: x.sort_values().unique()[1], axis=0)

예시

더 나은 이해를 위해 다음 코드를 확인합시다 -

import pandas as pd
df = pd.DataFrame({'Id':[1,2,3,4,5,6,7,8,9,10],
'Salary':[20000,30000,50000,40000,80000,90000,350000,55000,60000,70000],
            'Age': [22,23,24,25,26,25,26,27,25,24]
      })
print("DataFrame is:\n",df)
print("Second lowest value of each column is:")
result = df.apply(lambda x: x.sort_values().unique()[1], axis=0)
print(result)

출력

DataFrame is:
 Id Salary Age
0 1 20000  22
1 2 30000  23
2 3 50000  24
3 4 40000  25
4 5 80000  26
5 6 90000  25
6 7 350000 26
7 8 55000  27
8 9 60000  25
9 10 70000 24
Second lowest value of each column is:
Id       2
Salary 30000
Age    23
dtype: int64