亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PySpark-顯示數據框中的列數據類型計數

PySpark-顯示數據框中的列數據類型計數

素胚勾勒不出你 2021-05-15 14:10:15
如何像使用熊貓數據框那樣查看Spark數據框中每種數據類型的計數?例如,假設df是熊貓數據幀:>>> df.info(verbose=True)<class 'pandas.core.frame.DataFrame'>RangeIndex: 5 entries, 0 to 4Data columns (total 3 columns):int_col      5 non-null int64text_col     5 non-null objectfloat_col    5 non-null float64**dtypes: float64(1), int64(1), object(1)**memory usage: 200.0+ bytes我們可以很清楚地看到每種數據類型的計數。如何使用Spark數據框執行類似操作?也就是說,如何看到有多少列是浮動的,有多少列是int的,有多少列是對象的?
查看完整描述

3 回答

?
茅侃侃

TA貢獻1842條經驗 獲得超22個贊

下面的代碼應該可以為您帶來理想的結果


# create data frame 

df = sqlContext.createDataFrame(

[(1,'Y','Y',0,0,0,2,'Y','N','Y','Y'),

 (2,'N','Y',2,1,2,3,'N','Y','Y','N'),

 (3,'Y','N',3,1,0,0,'N','N','N','N'),

 (4,'N','Y',5,0,1,0,'N','N','N','Y'),

 (5,'Y','N',2,2,0,1,'Y','N','N','Y'),

 (6,'Y','Y',0,0,3,6,'Y','N','Y','N'),

 (7,'N','N',1,1,3,4,'N','Y','N','Y'),

 (8,'Y','Y',1,1,2,0,'Y','Y','N','N')

],

('id', 'compatible', 'product', 'ios', 'pc', 'other', 'devices', 'customer', 'subscriber', 'circle', 'smb')

)


# Find data types of data frame

datatypes_List = df.dtypes


# Querying datatypes_List gives you column and its data type as a tuple

datatypes_List

[('id', 'bigint'), ('compatible', 'string'), ('product', 'string'), ('ios', 'bigint'), ('pc', 'bigint'), ('other', 'bigint'), ('devices', 'bigint'), ('customer', 'string'), ('subscriber', 'string'), ('circle', 'string'), ('smb', 'string')]


# create empty dictonary to store output values

dict_count = {}


# Loop statement to count number of times the data type is present in the data frame

for x, y in datatypes_List:

    dict_count[y] = dict_count.get(y, 0) + 1



# query dict_count to find the number of times a data type is present in data frame

dict_count  


查看完整回答
反對 回復 2021-05-18
  • 3 回答
  • 0 關注
  • 315 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號