pandas DataFrame 은 여러 열의 값 에 따라 판단 하여 새로운 열 값 인 스 턴 스 를 생 성 합 니 다.

환경:Python 3.6.4+pandas 0.22
주로 DataFrame.apply 함수 의 응용 입 니 다.axis 인 자 를 1 로 설정 하면 함수 마다 DataFrame 의 한 줄 을 꺼 내 처리 합 니 다.axis 가 1 이면 한 열 을 가 져 옵 니 다.
코드 에서 보 듯 이 도시 이름 에 ing 필드 가 포함 되 어 있 고 년도 가 2016 이 라면 새로운 test 값 은 1 이 고 그렇지 않 으 면 0 이 라 고 판단 합 니 다.

import numpy as np 
import pandas as pd 
 
data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 
 'year': [2016,2016,2015,2017,2016, 2016], 
 'population': [2100, 2300, 1000, 700, 500, 500]} 
frame = pd.DataFrame(data, columns = ['year', 'city', 'population', 'debt']) 
 
def function(a, b): 
 if 'ing' in a and b == 2016: 
 return 1 
 else: 
 return 0 
print(frame, '
') frame['test'] = frame.apply(lambda x: function(x.city, x.year), axis = 1) print(frame)
실행 결 과 는 다음 과 같 습 니 다.

또한 Series 유형 에 도 apply 함수 가 있 습 니 다.용법 예 는 다음 과 같 습 니 다.

import numpy as np 
import pandas as pd 
 
data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 
 'year': [2016,2016,2015,2017,2016, 2016], 
 'population': [2100, 2300, 1000, 700, 500, 500]} 
frame = pd.DataFrame(data, columns = ['year', 'city', 'population', 'debt']) 
 
print(frame, '
') frame['panduan'] = frame.city.apply(lambda x: 1 if 'ing' in x else 0) print(frame)
실행 결 과 는 다음 과 같 습 니 다.

이상 의 pandas DataFrame 은 여러 열의 값 에 따라 판단 합 니 다.새로운 열 값 인 스 턴 스 를 만 드 는 것 은 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 할 수 있 고 많은 응원 을 바 랍 니 다.

좋은 웹페이지 즐겨찾기