显示单元格的开始和结束

时间:2019-05-19 17:51:35

标签: python pandas

我想在数据框中显示表中的唯一值。所以我写了以下脚本:

def glimpseDF(data,col_tronq={None:0}):
colnames=[]
typenames=[]
valueSorted=[]
for col in data.columns[3:]:
    colnames.append(col)
    typenames.append(data[col].dtype)
    valueSorted.append(data[col].sort_values().unique())

return pd.DataFrame({'Colname':colnames,'Typename':typenames,'Values':valueSorted})

同时,当一列具有很多值时,我看不到全部内容(即使使用pd.set_option('display.max_colwidth',1000)玩),并且出于可见性甚至也不可取。

有没有一种简单的方法可以显示每个单元格中值的开始和结束? 默认行为是显示单元格的开头,后跟省略号“ ...”?

1 个答案:

答案 0 :(得分:0)

我在这里写了一些东西,但对我来说似乎并不干净:

def glimpseDF(df,bool_trunc=False,n=4,col_tronq={None:0}):
if bool_trunc:
    col_tronq={col:n for col in df.columns }
colnames=[]
typenames=[]
data=[]
for col in df.columns:
    colnames.append(col)
    typenames.append(df[col].dtype)
    valuesSorted=df[col].sort_values().unique()
    if  col  in list(col_tronq.keys())and col_tronq[col]!=0:
        valuesTruncated=list(valuesSorted[0:col_tronq[col]])+[ ' ... ' ]+list(valuesSorted[-1*(col_tronq[col]):])
        data.append(valuesTruncated)
    else:
        data.append(valuesSorted)
return pd.DataFrame({'Colname':colnames,'Typename':typenames,'Values':data})