데이터 처리 과정에서 때로는 많은 양의 데이터를 필터링하고 정리해야 할 때가 있습니다. 이때 Python의 정규 표현식을 사용하면 데이터 처리 효율성을 크게 향상시킬 수 있습니다. 다음은 빅데이터 처리를 위해 Python 정규식을 사용하는 방법을 소개합니다.
먼저 500,000개의 표준 중국어 텍스트가 포함된 데이터 세트와 같이 처리해야 할 데이터를 준비해야 합니다. 이 데이터 세트는 인터넷에서 얻거나 직접 만들 수 있습니다.
Python 정규식을 사용하기 전에 Python에 내장된 re 모듈을 가져와야 합니다. 이 모듈은 일반적으로 사용되는 많은 정규식 관련 함수 및 메서드를 제공합니다.
import re
정규식은 문자열을 일치시키는 데 사용되는 표현식이지만, 일반적으로 사용되는 구문을 익히면 데이터 처리 효율성이 크게 향상됩니다.
3.1. 표현식
정규 표현식의 기본 구문은 일련의 문자와 메타문자로 구성된 표현식입니다. 그 중 문자는 일치하는 문자열의 문자를 나타내고, 메타문자는 특정 유형의 문자를 나타냅니다.
3.2. 메타 문자
메타 문자는 단일 문자 메타 문자와 결합 문자 메타 문자로 구분됩니다.
단일 문자 메타 문자에는 다음이 포함됩니다.
문자 메타 문자 결합에는 다음이 포함됩니다.
3.3. 수량자는 일치하는 문자의 수를 표현하는 데 사용됩니다. 일반적으로 사용되는 수량자는 다음과 같습니다.
*: 0 이상과 일치하는 모든 문자를 나타냅니다.4.1. 데이터 읽기
먼저 데이터를 읽어야 합니다. 여기에서 Python에 내장된 개방형 함수를 사용하여 읽거나 타사 라이브러리 pandas를 사용하여 읽을 수 있습니다.
# 使用pandas读取数据 import pandas as pd data = pd.read_csv('data.csv', encoding='utf-8')
4.2. 정규식을 사용하여 데이터 정리
이제 데이터에서 휴대폰 번호를 필터링하고 필터링된 데이터를 새 파일에 저장해야 한다고 가정해 보겠습니다. 이 예에서는 휴대폰 번호가 11자리라고 가정합니다.
위 정규식 구문에서 d는 임의의 숫자와 일치한다는 의미이고, {11}은 해당 숫자 11개가 일치해야 함을 의미합니다. 따라서 완전한 정규식은 다음과 같이 작성할 수 있습니다.
regexp = r'd{11}'
그런 다음 Python의 re 모듈을 사용하여 데이터를 필터링하고 정리할 수 있습니다. 먼저 데이터를 메모리로 읽은 다음 정규식을 사용하여 일치 및 추출합니다.
import re with open('data.csv', encoding='utf-8') as f: lines = f.readlines() # 使用正则表达式进行数据清洗 result = [] regexp = r'd{11}' for line in lines: match_obj = re.search(regexp, line) # 如果匹配成功,则把匹配的内容加入到result if match_obj: result.append(match_obj.group(0)) # 把结果写入到文件中 with open('result.txt', 'w', encoding='utf-8') as f: f.write(' '.join(result))
위 코드를 사용하여 정규식을 사용하여 모든 휴대폰 번호를 일치시키고 결과.txt 파일에 저장했습니다.
요약위 내용은 빅데이터 처리를 위해 Python 정규식을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!