PySpark 列的cast(~)
方法返回指定類型的新Column
。
參數
1.dataType
| Type
或 string
將列轉換為的類型。
返回值
一個新的 Column
對象。
例子
考慮以下PySpark DataFrame:
df = spark.createDataFrame([("Alex", 20), ("Bob", 30), ("Cathy", 40)], ["name", "age"])
df.show()
+-----+---+
| name|age|
+-----+---+
| Alex| 20|
| Bob| 30|
|Cathy| 40|
+-----+---+
將 PySpark 列類型轉換為字符串
要將 DataFrame 的 age
列的類型從數字轉換為 string
:
df_new = df.withColumn("age", df["age"].cast("string"))
df_new.show()
+-----+---+
| name|age|
+-----+---+
| Alex| 20|
| Bob| 30|
|Cathy| 40|
+-----+---+
同樣,我們可以像這樣傳入 StringType()
方法:
from pyspark.sql.types import StringType
df_new = df.withColumn("age", df["age"].cast(StringType()))
df_new.show()
+-----+---+
| name|age|
+-----+---+
| Alex| 20|
| Bob| 30|
|Cathy| 40|
+-----+---+
為了簡單起見,我建議傳遞 "string"
而不是 StringType()
。
要確認列類型已轉換為字符串,請使用 printSchema()
方法:
df_new.printSchema()
root
|-- name: string (nullable = true)
|-- age: string (nullable = true)
將 PySpark 列類型轉換為整數
要將列類型轉換為整數,請使用 cast("int")
:
df_new = df.withColumn("age", df["age"].cast("int"))
df_new.printSchema()
root
|-- name: string (nullable = true)
|-- age: integer (nullable = true)
將 PySpark 列類型轉換為 float
要將列類型轉換為浮點型,請使用 cast("float")
:
df_new = df.withColumn("age", df["age"].cast("float"))
df_new.printSchema()
root
|-- name: string (nullable = true)
|-- age: float (nullable = true)
將 PySpark 列類型轉換為日期
要將 PySpark 列類型轉換為日期,請使用 to_date(~)
方法而不是 cast(~)
。
相關用法
- Python PySpark Column contains方法用法及代碼示例
- Python PySpark Column isNotNull方法用法及代碼示例
- Python PySpark Column getItem方法用法及代碼示例
- Python PySpark Column rlike方法用法及代碼示例
- Python PySpark Column withField方法用法及代碼示例
- Python PySpark Column endswith方法用法及代碼示例
- Python PySpark Column dropFields方法用法及代碼示例
- Python PySpark Column alias方法用法及代碼示例
- Python PySpark Column isNull方法用法及代碼示例
- Python PySpark Column otherwise方法用法及代碼示例
- Python PySpark Column startswith方法用法及代碼示例
- Python PySpark Column isin方法用法及代碼示例
- Python PySpark Column substr方法用法及代碼示例
- Python Collections.UserString用法及代碼示例
- Python Collections.UserDict用法及代碼示例
- Python Collections.UserList用法及代碼示例
- Python Django Collate用法及代碼示例
- Python Django ContentTypeManager用法及代碼示例
- Python Condition release()用法及代碼示例
- Python Condition notify()用法及代碼示例
- Python Django ContextMixin.get_context_data用法及代碼示例
- Python Condition wait()用法及代碼示例
- Python Django Coalesce用法及代碼示例
- Python Django Cot用法及代碼示例
- Python Django CoordTransform用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 PySpark Column | cast method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。