특정 문자 제거하기 replace 함수를 쓰면 문자를 제거하거나 변경할 수 있는데, 데이터프레임 형태와 시리즈 형태에서의 쓰임이 약간 다르다. 오늘은 데이터프레임에서의 문자 제거 및 대체에 대해서 알아보자. 1. 부분일치 regex=True 파라미터를 추가함으로써 해당 문자가 포함되어 있으면 문자가 대체된다. df.replace('(|\s|희석|확인함)','', regex=True, inplace=True) df.replace('(?i).*(fibrin|citrate).*', '', regex=True, inplace=True) 참고로 (?i)를 추가하면 대소문자 상관없이 replace를 적용될 수 있다. 2. 완전일치 regex=True 없이 작성하면 된다. df.replace('.', '', inpl..
데이터 프레임 컬럼명 한 번에 바꾸기 컬럼명을 바꿔야 하는 컬럼이 여러 개인 경우 코드가 지저분해질 수 있기 때문에 난 아래와 같이 작성한다. 예시 코드 result.rename(columns={name: name-date)//pd.Timedelta(days=1) for name in set(result.columns)}, inplace=True) result라는 데이터프레임에서 컬럼명을 바꿀 때 rename이라는 함수를 사용한다. 그리고 그 안에서 딕셔너리 형태로 columns 이름을 지정하는데 for문을 이용하여 한번에 바꿔줄 수 있다.
groupby로 문자열 합치기 groupby는 보통 통계 낼 때 많이 쓰지만 문자열 자체를 합칠 때도 쓸 수 있다. 합칠 때 ,나 / 혹은 띄어쓰기로도 합칠 수 있으니 상황에 맞게 중간자를 선택하면 된다. 예시 코드 data.groupby(['hid','date'], as_index=False).agg(lambda x: ','.join(set(x)))
텐서플로우 텐서플로우는 데이터 플로우 그래프를 사용하여 수치 연산을 하는 오픈소스 소프트웨어 라이브러리입니다. CPU나 GPU를 사용하여 연산을 구동시킬수 있으며, 머신러닝과 딥러닝 연구를 목적으로 구글 브레인 팀이 2015년에 개발했습니다. 2019년, 텐서플로우 2.0 버전이 공개되었습니다. 따라서 최근 코드들은 텐서플로우 2.0으로 작성되어 있습니다. 하지만 당연하게도 텐서플로우 2.0이 나오기 이전 코드들은 모두 텐서플로우 1.x 버전입니다. 따라서 머신러닝 및 딥러닝에 대한 넓고 깊은 이해를 위해선 텐서플로우 2.0뿐만 아니라 텐서플로우 1.x에 대한 지식을 갖고 있어야 합니다. 이번 실습에서는 텐서플로우 1.x와 텐서플로우 2.0으로 간단한 연산을 해보고, 이를 통해 각 버전을 비교해보도록 하..
역전파(Back propagation) 역전파(Back propagation)는 다층 퍼셉트론 모델을 이루는 가중치들을 개선하기 위해 개발된 여러 알고리즘들 중 가장 유명하고 널리 쓰이는 방법입니다. 이번 실습에서는 역전파를 간단하게 실습해보기 위해, 퍼셉트론 한 개의 가중치들을 개선시키는 역전파를 구현해 보도록 합니다. 다음 그림은 이번 실습에서 사용되는 퍼셉트론을 나타냅니다. 입력은 x_1, x_2, x_3x1,x2,x3 세 개의 정수로 주어지고, 각각 w_1, w_2, w_3w1,w2,w3의 계수가 곱해져 sigmoid 함수를 통과할 값은 x_1w_1 + x_2w_2 + x_3w_3x1w1+x2w2+x3w3가 됩니다. 여기서 w_1, w_2, w_3w1,w2,w3가 바로 ..