반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Github
- string
- array
- Python
- Kotlin
- Excel
- google apps script
- Google Excel
- gas
- hive
- numpy
- GIT
- PostgreSQL
- Google Spreadsheet
- Mac
- matplotlib
- django
- Tkinter
- c#
- Redshift
- list
- PANDAS
- PySpark
- math
- SQL
- dataframe
- Java
- 파이썬
- Apache
Archives
- Today
- Total
달나라 노트
Python pyspark : regexp_replace (정규표현식으로 문자 치환하기) 본문
Python/Python pyspark
Python pyspark : regexp_replace (정규표현식으로 문자 치환하기)
CosmosProject 2021. 5. 28. 18:54728x90
반응형
regexp_replace(<column>, <pattern>, <text>)
pyspark의 regexp_replace는 위처럼 사용할 수 있습니다.
<column>에 있는 데이터들에 대해
<pattern>과 일치하는 부분을
<text>로 바꿔서 반환합니다.
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, regexp_replace
import pandas as pd
spark = SparkSession.builder.getOrCreate()
df_test = pd.DataFrame({
'a': [1, 2, 3],
'b': [10.0, 3.5, 7.315],
'c': ['apple', 'banana', 'tomato']
})
df_spark = spark.createDataFrame(df_test)
df_spark = df_spark.select(
col('a'),
col('b'),
regexp_replace(col('c'), '[a-z]', '@').alias('new_c')
)
df_spark.show()
-- Result
+---+------+-------+
| a| b| new_c|
+---+------+-------+
| 1| 10.0| @@@@@|
| 2| 3.5| @@@@@@|
| 3| 7.315| @@@@@@|
+---+------+-------+
위 예시를 보면 column c의 모든 값에 대해
알파벳 소문자([a-z])에 해당하는 값을
골뱅이(@)로 바꿔서 return하고있죠.
또한 regexp_replace가 적용된 컬럼에 alias method를 적용하여
new_c라는 새로운 컬럼 이름을 붙여주고 있습니다.
728x90
반응형
'Python > Python pyspark' 카테고리의 다른 글
Python pyspark : udf (사용자 정의 함수 User Defined Functions 사용하기) (0) | 2021.05.28 |
---|---|
Python pyspark : alias (컬럼 이름 변경하기) (0) | 2021.05.28 |
Python pyspark : write, option, saveAsTable (spark dataframe을 AWS s3에 업로드하기) (0) | 2021.05.19 |
Python pyspark : write, saveAsTable (spark dataframe을 database의 table에 삽입하기) (0) | 2021.05.19 |
Python pyspark : sql (spark에서 hive 쿼리 돌리기) (0) | 2021.05.19 |
Comments