Spark 2.4.3의 여러 열에 StopWordsRemover 및 RegexTokenizer 적용

사친 샤르마

다음 데이터 프레임, df4가 있습니다.

|Itemno   |fits_assembly_id                                        |fits_assembly_name                                                                         |assembly_name 

|0450056  |13039 135502 141114 4147 138865 2021 9164               |OIL PUMP ASSEMBLY A01EA09CA 4999202399920239A06 A02EA09CA A02EA09CB A02EA09CC              |OIL PUMP ASSEMBLY 999202399920239A06 

위에서 언급 한 데이터 프레임을 처리 / 정리하기 위해 다음 코드를 사용하고 있습니다.

from pyspark.ml.feature import StopWordsRemover, RegexTokenizer
from pyspark.sql.functions import expr


# Task-1: Regex Tokenizer

tk = RegexTokenizer(pattern=r'(?:\p{Punct}|\s)+', inputCol='fits_assembly_name', outputCol='temp1')
df5 = tk.transform(df4)

#Task-2: StopWordsRemover
sw = StopWordsRemover(inputCol='temp1', outputCol='temp2')
df6 = sw.transform(df5)

# #Task-3: Remove duplicates
df7 = df6.withColumn('fits_assembly_name', expr('concat_ws(" ", array_distinct(temp2))')) \
            .drop('temp1', 'temp2')

나는 두 열 처리 할 fits_assembly_nameassembly_name에서를 RegexTokenizer & StopWordsRemover한 번에. 어떻게 이룰 수 있는지 공유해 주시겠습니까?

jxc

목록 이해를 사용하여 여러 열을 처리하고 pyspark.ml.Pipeline사용 하여 중간 데이터 프레임을 건너 뛸 수 있습니다. 아래를 참조하세요.

from pyspark.ml.feature import StopWordsRemover, RegexTokenizer
from pyspark.ml import Pipeline
from pyspark.sql.functions import expr

# df4 is the initial dataframe and new result will overwrite it.
for col in ['fits_assembly_name', 'assembly_name']:
    tk = RegexTokenizer(pattern=r'(?:\p{Punct}|\s)+', inputCol=col, outputCol='temp1')
    sw = StopWordsRemover(inputCol='temp1', outputCol='temp2')
    pipeline = Pipeline(stages=[tk, sw])
    df4 = pipeline.fit(df4).transform(df4) \
        .withColumn(col, expr('concat_ws(" ", array_distinct(temp2))')) \
        .drop('temp1', 'temp2')

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

XS (스마트 폰 및 iPhone)에서만 Bootstrap 4의 하단 여백 적용

data.table의 여러 열에 여러 함수 적용

Zeppelin을 사용하여 AWS Spark-ec2 클러스터 및 S3 버킷에 액세스하는 방법

여러 열에서 Spark ML의 OneHotEncoder 사용

팬더, groupby 객체에 여러 열의 여러 기능 적용

여러 열에 사용자 지정 Spark Aggregator 적용 (Spark 2.0)

Python 및 계산의 여러 열에 Groupby 함수 적용

Spark 및 Java 8을 사용하여 여러 열 가져 오기 및 필터링

여러 열에서 R의 정렬 및 순위 사용

Spark에서 여러 피벗 된 열의 이름 변경 및 최적화

Spark 2 Coalesce 여러 열을 한 번에

여러 형식의 열에 Posixlt 적용

dtypes datetime 및 integer의 다른 여러 열에 조건문을 적용하여 열 만들기

PDO 및 PHP를 사용하여 2 개의 테이블에 여러 행 삽입

Spark Scala의 창 PartitionBy에 여러 열을 적용하는 방법

팬더는 여러 열에 적용 및 할당

Spark / Scala ML에서 RegexTokenizer ()를 사용한 후 StopWords ()가 작동하지 않음

여러 열에 대한 groupby 및 다양한 기능 적용

Spark 데이터 프레임 열에서 sha2의 여러 반복

Spark의 Edge 및 Vertices에 여러 열 데이터 저장

redshift 클러스터 및 S3와 다른 지역의 EC2 / EMR에서 spark-redshift 사용

R의 목록에서 적용 패밀리 및 여러 기능 사용

Python 및 Pandas: 여러 열에 적용

Spark/Scala ML에서 RegexTokenizer()를 사용하여 태그를 제거하는 방법은 무엇입니까?

Python의 여러 열에 대해 루프 및 용융?

spark <2.2 및 스칼라의 문자열 열 배열에서 여러 값의 발생 횟수

Pandas의 여러 그룹 및 여러 열에 다른 함수 적용

데이터 프레임의 부분 집합화 및 여러 열에 대한 누적 연산 적용

pyspark는 RegexTokenizer 및 Word2Vec을 사용하여 문장을 토큰화하고 벡터화합니다.

TOP 리스트

  1. 1

    JNDI를 사용하여 Spring Boot에서 다중 데이터 소스 구성

  2. 2

    std :: regex의 일관성없는 동작

  3. 3

    JSoup javax.net.ssl.SSLHandshakeException : <url>과 일치하는 주체 대체 DNS 이름이 없습니다.

  4. 4

    PrematureCloseException : 연결이 너무 일찍 닫혔습니다.

  5. 5

    Xcode10 유효성 검사 : 이미지에 투명성이 없지만 여전히 수락되지 않습니까?

  6. 6

    정점 셰이더에서 카메라에서 개체까지의 XY 거리

  7. 7

    Ionic 2 로더가 적시에 표시되지 않음

  8. 8

    Seaborn에서 축 제목 숨기기

  9. 9

    C #에서 'System.DBNull'형식의 개체를 'System.String'형식으로 캐스팅 할 수 없습니다.

  10. 10

    복사 / 붙여 넣기 비활성화

  11. 11

    ArrayBufferLike의 typescript 정의의 깊은 의미

  12. 12

    Google Play Console에서 '예기치 않은 오류가 발생했습니다. 나중에 다시 시도해주세요. (7100000)'오류를 수정하는 방법은 무엇입니까?

  13. 13

    Kubernetes Horizontal Pod Autoscaler (HPA) 테스트

  14. 14

    jfreecharts에서 x 및 y 축 선을 조정하는 방법

  15. 15

    PRNG 기간보다 순열이 더 많은 목록을 무작위로 섞는 방법은 무엇입니까?

  16. 16

    C # HttpWebRequest 기본 연결이 닫혔습니다. 전송시 예기치 않은 오류가 발생했습니다.

  17. 17

    다음 컨트롤이 추가되었지만 사용할 수 없습니다.

  18. 18

    잘못된 구성 개체입니다. Webpack이 Angular의 API 스키마와 일치하지 않는 구성 개체를 사용하여 초기화되었습니다.

  19. 19

    Android Kotlin은 다른 활동에서 함수를 호출합니다.

  20. 20

    R의 마침표와 숫자 사이에 문자열 삽입

  21. 21

    Assets의 BitmapFactory.decodeStream이 Android 7에서 null을 반환합니다.

뜨겁다태그

보관