반응형
▪ 함수 설명
withColumn은 Apache Spark에서 제공하는 함수로, PySpark의 DataFrame에서 컬럼을 추가하거나 변형할 때 사용됩니다.
이 함수는 기존 DataFrame을 변경하지 않고 새로운 DataFrame을 생성합니다
데이터 프레임에 새로운 컬럼을 추가하거나, 기존 컬럼을 업데이트하는 데에 사용됩니다.
DataFrame.withColumn(colName, col)
- colName: 새로운 컬럼의 이름을 나타내는 문자열입니다.
- col: 새로운 컬럼을 생성하거나, 기존 컬럼을 변형하기 위한 PySpark의 Column 객체 또는 표현식입니다.
▪ 실행 및 결과
컬럼 추가
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
# SparkSession 생성
spark = SparkSession.builder.appName("example").getOrCreate()
# 예제 DataFrame 생성
data = [("Alice", 28), ("Bob", 35), ("Catherine", 22)]
columns = ["Name", "Age"]
df = (
spark
.createDataFrame(data, columns)
# withColumn을 사용하여 새로운 컬럼 추가
.withColumn("AgePlusTen", col("Age") + 10)
)
df.show()
+---------+---+----------+
| Name|Age|AgePlusTen|
+---------+---+----------+
| Alice| 28| 38|
| Bob| 35| 45|
|Catherine| 22| 32|
+---------+---+----------+
컬럼 업데이트
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
# SparkSession 생성
spark = SparkSession.builder.appName("example").getOrCreate()
# 예제 DataFrame 생성
data = [("Alice", 28), ("Bob", 35), ("Catherine", 22)]
columns = ["Name", "Age"]
df = (
spark
.createDataFrame(data, columns)
# withColumn을 사용하여 컬럼 업데이트
.withColumn("Age", col("Age") + 1)
)
# 결과 확인
df.show()
+---------+---+
| Name|Age|
+---------+---+
| Alice| 29|
| Bob| 36|
|Catherine| 23|
+---------+---+
반응형