1. 查看数据样本
head() 与 tail() 用于快速预览 Series 与 DataFrame,默认显示 5 条数据,也可以指定显示数据的数量。
创建随机的DataFrame
df = pd.DataFrame({'DATE': pd.date_range('20220101', '20220201', periods=10),
'A': np.random.randint(0, 10, size=10),
'B': np.random.randint(0, 100, size=10),
})
查看行列数
In [8]:df.shape # 查看行列数
Out[8]: (10, 3)
查看前5行和后3行
In [5]: df.head() # 查看前5行
Out[5]:
DATE A B
0 2022-01-01 00:00:00 3 27
1 2022-01-04 10:40:00 5 59
2 2022-01-07 21:20:00 3 14
3 2022-01-11 08:00:00 9 36
4 2022-01-14 18:40:00 9 32
In [6]:df.tail(3) # 查看后3行
Out[6]:
DATE A B
7 2022-01-25 02:40:00 6 95
8 2022-01-28 13:20:00 1 62
9 2022-02-01 00:00:00 4 85
小技巧:当字段数(列数)很多时,可以采用转置的方法看数据。
In [7]:df.head(3).T # 查看前3行,并转置
Out[7]:
0 1 2
DATE 2022-01-01 00:00:00 2022-01-04 10:40:00 2022-01-07 21:20:00
A 3 5 3
B 27 59 14
2. 数据检查
查看数据类型
In [10]: df.dtypes # 检查数据类型
Out[10]:
DATE datetime64[ns]
A int32
B int32
dtype: object
检查缺失值
In [11]:df.isnull().sum() # 检查缺失值
Out[11]:
DATE 0
A 0
B 0
dtype: int64
3. 数据探索性分析/EDA
toad库可以很方便的进行EDA分析,可以返回以下信息:
- type:数据类型
- size:数据数
- missing:数据缺失率
- unique:唯一值数目
- 其他:数值型变量返回最大、最小、平均值和分位数,类别型变量返回频数分布的Top5和Bottom5
In [7]: toad.detect(df) # 基于toad库做EDA分析
Out[7]:
type size missing unique mean_or_top1 std_or_top2 min_or_top3 1%_or_top4 10%_or_top5 50%_or_bottom5 75%_or_bottom4 90%_or_bottom3 99%_or_bottom2 max_or_bottom1
DATE datetime64[ns] 10 0.00% 10 2022-01-01 00:00:00:10.00% 2022-01-04 10:40:00:10.00% 2022-01-07 21:20:00:10.00% 2022-01-11 08:00:00:10.00% 2022-01-14 18:40:00:10.00% 2022-01-18 05:20:00:10.00% 2022-01-21 16:00:00:10.00% 2022-01-25 02:40:00:10.00% 2022-01-28 13:20:00:10.00% 2022-02-01 00:00:00:10.00%
A int32 10 0.00% 6 3.9 2.424413 1.0 1.0 1.0 4.0 5.0 7.1 7.91 8.0
B int32 10 0.00% 10 35.0 26.849374 3.0 3.54 8.4 31.0 43.25 65.0 89.3 92.0
未完待续~~~