Pandas DataFrame DataFrame.isin() 함수
-
pandas.DataFrame.isin(values)구문 -
예제 코드:
iterable을 입력으로 사용하는DataFrame.isin() -
예제 코드:
Dictionary를 입력으로 사용하는DataFrame.isin() -
예제 코드:
DataFrame.isin(),Series를 입력으로 사용 -
예제 코드:
DataFrame.isin()입력으로DataFrame사용
pandas.DataFrame.isin(values) 함수는 호출자 DataFrame의 각 요소를 확인합니다. 입력 values에 지정된 값을 포함합니다.
pandas.DataFrame.isin(values)구문
DataFrame.isin(values)
매개 변수
values |
iterable - list,tuple,set 등 Dictionary, Series DataFrame |
반환
각 요소가 입력 values을 포함하는지 여부를 나타내는 호출자 DataFrame과 동일한 차원의 부울 DataFrame을 반환합니다.
예제 코드: iterable을 입력으로 사용하는DataFrame.isin()
Python iterable이 입력일 때 Pandas DataFrame.isin()함수는DataFrame의 각 값에iterable의 값이 포함되어 있는지 확인합니다.
import pandas as pd
df = pd.DataFrame({'Sales': [100, 200], 'Profit': [200, 400]})
df = df.isin([200, 400])
print(df)
호출자DataFrame은
Sales Profit
0 100 200
1 200 400
출력:
Sales Profit
0 False True
1 True True
여기서 200과 400은[200, 400]목록에 있으므로 원래 값이 200과 400 인 반환 된DataFrame의 값은True입니다. 100은 [200, 400]목록에 없으므로 해당 위치의 값은 False를 반환합니다.
예제 코드: Dictionary를 입력으로 사용하는DataFrame.isin()
입력 값 유형이 Dictionary인 경우 isin()함수는 값뿐만 아니라 key도 확인합니다. 열 이름이 key와 같고 셀 값이 사전의 value에 포함 된 경우에만 True를 반환합니다.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
df = df.isin({"Sales": [200, 400]})
print(df)
출력:
Sales Profit
0 False False
1 True False
첫 번째 예에서 Profit열의 값은 모두 True이지만이 예에서는 열 이름이 입력 사전의 key와 다르기 때문에 False입니다.
사전의 value([200, 400])에 값이 포함되어 있으면 Sales열에 True를 반환합니다.
예제 코드: DataFrame.isin(),Series를 입력으로 사용
입력 값 유형이 Pandas Series 인 경우isin()함수는 열당 요소가 입력Series의 동일한 인덱스에있는 값과 동일한 지 확인합니다.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
valueSeries = pd.Series([200, 400])
print(valueSeries)
df = df.isin(valueSeries)
print(df)
출력:
0 200
1 400
dtype: int64
Sales Profit
0 False True
1 False True
Profit 열의 요소는 입력Series 요소 별 요소와 동일하므로 해당 열의 두 요소 모두에 대해True를 반환합니다.
예제 코드: DataFrame.isin()입력으로DataFrame 사용
입력 값 유형이 Pandas DataFrame 인 경우isin()함수는 호출자DataFrame의 각 요소가 동일한 위치에있는 입력DataFrame의 요소와 동일한 지 확인합니다.
값이 동일하면 True를, 불일치하면 False를 반환합니다.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
print(df)
valueDf = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 300]})
print(valueDf)
df = df.isin(valueDf)
print(df)
출력:
Sales Profit
0 100 200
1 200 400
Sales Profit
0 100 200
1 200 300
Sales Profit
0 True True
1 True False
(1, 1)위치의 값은 호출자 DataFrame과 입력 DataFrame간에 값이 다르기 때문에 False를 반환합니다.
isin()함수는 요소 단위로 값을 검사 할뿐만 아니라 열 이름이 동일한 지 여부도 검사합니다. 이 두 DataFrames에서 값이 동일하더라도 열 이름이 다르면 False를 반환합니다.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