여러 문자열을 포함하는 모든 행 검색하기 어떤 문자열을 포함하는 행을 찾기 위해선 contains라는 함수를 사용해야 한다. 만약 여러 문자열을 포함하는 모든 행을 찾고 싶다면 어떻게 해야할까? 다섯개 정도까지는 직접 &와 |를 이용해서 코드를 쓸 수 있지만 그 이상으로 넘어가면 지저분해진다. 따라서 join함수를 이용해 간단하게 써보자. 예시 코드 import pandas as pd # 포함하고자 하는 문자열 리스트 생성 example_list = ['apple', 'red', 'peach', 'blue'] # 데이터프레임 생성 df = pd.DataFrame(data) # join함수를 이용하여 이어주고 contains 함수에 넣기 test = '|'.join(example_test) result =..
데이터 프레임에서 한글만 제거하기 데이터 프레임에서 특정 문자를 포함하는 경우에 대해 다루고 싶다면 정규표현식을 떠올려보자. 예시 코드 예를 들어 아래와 같은 데이터 프레임이 있다고 하자. 만약 숫자만 남기고 싶다면 정규식을 이용하면 된다. df['col_1']=df['col_1'].str.replace(pat=r'[ㄱ-ㅣ가-힣]+', repl= r'', regex=True) 단 컬럼별로 해야 한다. df['col_1']=df['col_1'].str.replace(pat=r'[ㄱ-ㅣ가-힣]+', repl= r'', regex=True) df['col_2']=df['col_2'].str.replace(pat=r'[ㄱ-ㅣ가-힣]+', repl= r'', regex=True)
데이터 프레임에 빈 행 추가하기 추가하는 개념을 생각했을 땐 append를 떠올리기 쉽다. 그러나 어떤 빈 값을 추가하면 안 되고 빈 시리즈나 빈 데이터 프레임 자체를 추가 해줘야 한다. 나는 인덱스에 특정 값을 넣은 상태에서 빈 행을 추가해야 하기 때문에 아래와 같이 작성했다. 예시 코드 df = df.append(pd.Series(name=idx_name)) name 이라는 파라미터에 넣고싶은 인덱스 변수를 넣으면 idx_name을 가진 빈행이 추가된다.