Giả sử tôi có một DataFrame x
với schema này:Đúc một cột có nguồn gốc mới trong một DataFrame từ boolean để nguyên
xSchema = StructType([ \
StructField("a", DoubleType(), True), \
StructField("b", DoubleType(), True), \
StructField("c", DoubleType(), True)])
sau đó tôi có DataFrame:
DataFrame[a :double, b:double, c:double]
Tôi muốn có một cột có nguồn gốc số nguyên. Tôi có thể tạo ra một cột boolean:
x = x.withColumn('y', (x.a-x.b)/x.c > 1)
schema mới của tôi là:
DataFrame[a :double, b:double, c:double, y: boolean]
Tuy nhiên, tôi muốn cột y
chứa 0 cho False và 1 cho True.
Chức năng cast
chỉ có thể hoạt động trên một cột chứ không phải là DataFrame
và chức năng withColumn
chỉ có thể hoạt động trên DataFrame
. Làm thế nào để tôi thêm một cột mới và đúc nó vào số nguyên cùng một lúc?