def show_df_info(df):
print(df.info())
print('######################## Missing value ######################## \n',df.isnull().sum())
print('######################## Repeat ######################## \n', df.duplicated().any())
print('######################## Count ######################## \n', df.nunique())
print('######################## Describe ######################## \n', df.describe())
df.info() 一般看数据的整体情况,有无缺失,内存占用量,数据类型,数据索引范围等基本信息
RangeIndex: 100000 entries, 0 to 99999
Data columns (total 3 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 user_id 100000 non-null int64
1 gender 100000 non-null int64
2 age_range 100000 non-null object
dtypes: int64(2), object(1)
memory usage: 2.3+ MB
df.isnull().sum() 用来统计每个属性的缺失个数,有时候列数过多,df.info()显示的缺失情况会看起来眼花缭乱,所以用这种方式比较简单明了
######################## Missing value ########################
user_id 0
gender 0
age_range 0
dtype: int64
df.duplicated().any() 查看数据的样本中有无重复值情况
df.duplicated(keep=False) #将所有的重复样本都标记为True
df.duplicated(subset=['brand']) #以某个子集为基准
df.nunique() 统计每个属性下面,不同值的总数
user_id 100000
gender 2
age_range 13
dtype: int64
df.describe()是对数据的统计信息的基本描述,适用于连续值属性
user_id gender
count 100000.000000 100000.000000
mean 49999.500000 0.405000
std 28867.657797 0.490894
min 0.000000 0.000000
25% 24999.750000 0.000000
50% 49999.500000 0.000000
75% 74999.250000 1.000000
max 99999.000000 1.000000