개발 꿀팁/PYTHON

【Pytho상용 함수]

Jammie 2022. 11. 22. 10:31
반응형

모든 것이 양적 변화에서 질적 변화로 이어지는 과정이며 파이썬을 배우는 것도 예외는 아닙니다.언어에서 자주 사용되는 함수를 잘 알고 있어야 문제를 처리하는 과정에서 최적의 솔루션을 신속하게 찾을 수 있습니다.이 기사는 파이썬의 enumerate 함수를 탐색하여 이 함수의 원리를 최단 시간에 이해할 수 있도록 합니다.또한 조각화된 시간을 사용하여 이 함수를 통합하여 작업 처리 중에 더 효율적으로 만들 수 있습니다

 

1. enumerate 함수 정의
  
enumerate 함수는 파이썬에서 일반적으로 사용되는 내장 함수이며 호출은 라이브러리를 로드할 필요 없이 바로 사용할 수 있습니다.enumerate 함수는 통과 가능한 객체(예: 목록, 메타그룹, 문자열 등)를 인덱스 시퀀스로 결합할 수 있으며 데이터 첨자와 객체 값을 동시에 나열합니다.

기본 호출 문법은 다음과 같습니다

enumerate(iteration, start)
iteration: 목록, 메타그룹, 문자열 등과 같은 개체를 검색할 수 있습니다.
start: 인덱스의 시작 값을 지정하는 데 사용되며 기본값은 0입니다.
enumerate 함수의 반환 값은 두 가지가 있는데, 첫 번째는 색인이고 두 번째는 iteration 매개변수의 값입니다

2. enumerate 함수의 예
  

예 1: enumerate 함수는 목록을 색인화합니다.
  
먼저 enumerate 함수를 사용하여 목록을 다음과 같은 색인 시퀀스로 결합하는 것을 살펴보겠습니다

list('두리안', '수박', '블루베리')

결과를 얻다:

[(0, '두리안'), (1, '수박'), (2, '블루베리')]

결과로부터 enumerate 함수의 start 값이 지정되지 않은 경우 인덱스의 순서는 0부터 시작하여 순서대로 뒤로 레이블이 지정됩니다.

  

예2: enumerate 함수는 문자열을 색인화합니다.
  
다음으로 enumerate 함수를 사용하여 문자열을 인덱스 시퀀스로 결합하고 인덱스의 시작 값을 1로 지정하고 코드는 다음과 같습니다

list(enumerate, '모든 일에 최선을 다하면 후회는 없다', start=1)

결과를 얻다:

[(1, '범'),
(2, '일'),
(3, '끝'),
(4, '힘'),
(5, '됐다'),
(6, ','),
(7, '그냥'),
(8, '없음'),
(9, '있다'),
(10, '유'),
(11, '유감'),
(12, '됐다')]

enumerate 함수는 문자열의 각 문자를 분할하고 지정된 인덱스의 초기 값에서 번호를 매긴다는 것을 알 수 있습니다.

  

예3: enumerate 함수는 메타세그먼트를 인덱스 시퀀스로 결합합니다.
  
다음으로 enumerate 함수를 사용하여 메타 그룹을 인덱스 시퀀스로 결합하는 것을 봅니다. 코드는 다음과 같습니다

list('두리안', '수박', '블루베리', start=2)

결과를 얻다:

[(2, '두리안'), (3, '수박'), (4, '블루베리')]

결과로부터 enumerate 함수의 start 값이 2로 지정되면 라벨링 순서가 2에서 시작하여 순차적으로 뒤로 연기됨을 알 수 있다.

  

3. 이상 데이터 처리에 enumerate 함수의 적용
  
대출 예측 모델을 구축할 때는 먼저 이상 데이터를 처리해야 합니다.예를 들어 혼인 상태 값이 비어 있는 항목의 경우 현재 대출 상태에 따라 값을 채웁니다.

  

1 라이브러리 가져오기 및 데이터 로드
  
먼저 본문에 필요한 라이브러리를 가져오고 데이터를 로드하며, 일부 라이브러리가 설치되지 않아 실행 코드가 잘못 표시되는 경우 아나콘다 프롬프트에서 pip 방법으로 설치할 수 있습니다

임포르토스
임포트 판다스 as pd

#데이터 저장 경로 설정
os.chdir(r'F:\공식계정\65.대출예측')
#훈련집 읽기
date_train = pd.read_csv('train_u6lujuX_CVtuZ9i.csv', delimiter=',')
date_train['Loan_Status'].value_counts( )

결과를 얻다:

Yes    398
No     213
Name: Married, dtype: int64

훈련 세트의 데이터는 총 614개 행으로 현재 기혼 고객 398개, 미혼 고객 213개, 총 611개의 결혼 상태 고객이 있으며 데이터 중 3개 고객의 결혼 상태가 비어 있음을 나타냅니다.이상치를 처리할 때, 한 가지 방안은 이 3개의 빈 고객 데이터를 삭제하는 것인데, 이때 고객 정보가 손실됩니다.또 다른 방안은 null 값을 채우는 것이며, 다음으로 enumerate 함수를 적용하여 null 값을 채우는 것을 봅니다.

  

2 enumerate 함수를 사용하여 빈 값을 채웁니다.
  
enumerate 함수와 결합된 for 루프를 사용하여 null 값을 채우고 코드는 다음과 같습니다

for index, value in enumerate(date_train['Married']):
    if pd.isna(value):
        if date_train['Loan_Status'][index] == 'N':
            date_train['Married'][index] = 'No'
        else:
            date_train['Married'][index] = 'Yes'
date_train['Married'].value_counts()

코드의 논리는 결혼 상태 열의 값이 비어 있는 항목의 경우 해당 대출 상태가 N일 때 채워진 빈 값은 No이고, 그렇지 않으면 채워진 빈 값은 Yes입니다.enumerate 함수의 기능은 첨자를 생성하고 첨자를 통해 null 값을 할당하는 것입니다.

결과를 얻다:

Yes    401
No     213
Name: Married, dtype: int64

충전 후 Yes의 값이 398에서 401로 변경되었음을 알 수 있으며, 총 혼인상태 가치가 있는 고객 614가구로 고객별 혼인상태 가치가 있음을 알 수 있습니다

 

반응형

'개발 꿀팁 > PYTHON' 카테고리의 다른 글

[파이썬의 filter 함수]  (0) 2022.11.22
가장 완전한 파이썬 작업 엑셀  (0) 2022.11.22
파이썬 크리스마스 선물 그리기  (0) 2022.11.21
[python] 설날 불꽃쇼  (0) 2022.11.21
python등롱을 그리다  (0) 2022.11.21