我在 Pyspark (2.1.0) 中有一个 Spark DataFrame,我想要获取仅为数字列或字符串列的名称。
例如,这是我的 DF 的模式:
root
|-- Gender: string (nullable = true)
|-- SeniorCitizen: string (nullable = true)
|-- MonthlyCharges: double (nullable = true)
|-- TotalCharges: double (nullable = true)
|-- Churn: string (nullable = true)
这是我需要的内容:
num_cols = [MonthlyCharges, TotalCharges]
str_cols = [Gender, SeniorCitizen, Churn]
我该怎么做呢?
df.schema
并基于field.dataType
进行过滤,然后获取field.name
。文档:http://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.types.StructField - Daniel de Paula