• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

x.replace() 질문드립니다.

21.01.15 14:42 작성 조회수 113

1

안녕하세요. 다름이 아니라 복습하던 중 여쭤보고 싶은게 있어서 질문드리게 되었어요.

지금 복습하던 중 europe = europe.replace(", ", "|")을 해주면서 콤마(, )로 연결된 부분을 기호(|)로 바꾸어주었는데 반드시 이 기호로 사용하여야 하는지, 이 기호가 갖는 특별한 의미가 있는 것인지 궁금합니다.

강의 너무 잘듣고있습니다. 감사합니다

답변 1

답변을 작성해보세요.

1

안녕하세요.

해당 부분에 대해 설명이 부족했던 것 같습니다.

| 연산은 특별한 의미를 갖고 있는데요. 보통 and는 & 로 or는 | 로 표시를 하는데요.

판다스에서 이렇게 연산을 하는 이유는 정규표현식이라는 걸 사용하기 때문이에요.

그리고 시리즈 데이터 형태로 벡터연산을 할 때도 and, or 대신 & 와 |를 사용합니다.

이 벡터 연산 내부에서는 비트연산이라는 걸 하는데 비트 연산은 다음 위키 문서를 참고해 보세요.

[비트 연산 - 위키백과, 우리 모두의 백과사전](https://ko.wikipedia.org/wiki/%EB%B9%84%ED%8A%B8_%EC%97%B0%EC%82%B0)

판다스 외에도 여러 프로그래밍 언어에서는 이 비트연산이라는 걸 하는데, 파이썬에서는 직관적으로 and, or를 사용해요.

판다스의 replace에서 |로 or연산을 하는 이유는 정규표현식 문법에서도 이 비트연산을 사용하기 때문이에요.

replace 에 우리는 문자를 적어주었지만 내부에서는 정규표현식이라는 걸 사용하게 되는데요.

cheat sheet 수업 중에 다음 강좌에도 regex 라고 해서 filter 기능을 사용해 정규표현식을 사용하는 내용이 있습니다.


6) 일부 컬럼을 기준으로 데이터 가져오기 Subset Variables (Columns)

그래서 and는 &, or는 | 라는 것을 알아두시면 다른 언어를 사용하거나 엑셀에서 정규표현식을 사용하실 때도 도움이 될 것 같습니다.

또 정규표현식에 대해서도 아래 문서를 한번 읽어보시는 걸 추천합니다.

[정규 표현식 - 위키백과, 우리 모두의 백과사전](https://ko.wikipedia.org/wiki/%EC%A0%95%EA%B7%9C_%ED%91%9C%ED%98%84%EC%8B%9D)

감사합니다 :)