pyspark数据帧的数据类型中的不同计数
我需要一个函数在PypPark数据帧中获得类似的内容: 变量类型: 数字:4 类别:4pyspark数据帧的数据类型中的不同计数,pyspark,pyspark-dataframes,Pyspark,Pyspark Dataframes,我需要一个函数在PypPark数据帧中获得类似的内容: 变量类型: 数字:4 类别:4 日期:1让我们在Pyspark Shell中创建一个虚拟数据帧 rdd=sc.parallelize([[x',1,'y',2,1.1]]) >df=spark.createDataFrame(rdd,模式=['Col1','Col2','Col3','Col4','Col5']) 以下是df的列类型 >>df 数据帧[Col1:string,Col2:bigint,Col3:string,Col4:bigi
日期:1让我们在Pyspark Shell中创建一个虚拟数据帧 rdd=sc.parallelize([[x',1,'y',2,1.1]])
>df=spark.createDataFrame(rdd,模式=['Col1','Col2','Col3','Col4','Col5'])
以下是df的列类型
>>df
数据帧[Col1:string,Col2:bigint,Col3:string,Col4:bigint,Col5:double]
根据文档,如果您在Spark数据帧上使用dtypes属性,您将得到“所有列名及其数据类型作为列表”
打印(df.dtypes)
[('Col1','string'),('Col2','bigint'),('Col3','string'),('Col4','bigint'),('Col5','double')]
现在,您可以利用本机Python计数器库来获得所需的输出
>>来自集合导入计数器
>>数据类型=df.dtypes
dict(计数器(dict(数据类型).values())
{'string':2,'bigint':2,'double':1}
您应该能够轻松地将这两行转换为满足最终需求的函数
希望这有帮助