一、生成数据表
1、首先导入pandas和numpy库
2.导入CSV文件
二、数据表的信息查看
1.维度查看:
2.数据表基本信息(维度,列名称,数据格式,所占空间等):
3.每一列数据的格式:
4.某一列格式:
5.空值:
6.查看某一列空值:
7.查看某一列的唯一值:
8.查看数据表的值:
9.查看列名称:
10.查看前5行数据、后五行数据:
三、数据表清洗
1.用数字0填充空值:
yy.fillna(value=0)
2.使用列[‘名称’]的均值对NA进行填充:
yy[‘名称’].fillna(yy['名称'].mean())
3.清除某字段的字符空格:
yy['名称']=yy['名称'].map(str.strip)
4.大小写转换:
yy['名称']=yy['名称'].str.lower()
5.更改数据格式:
yy['名称'].astype('int')
6.更改列名称:
yy.rename(columns={'旧名称': '新名称})
7、删除后出现的重复值:
yy['名称'].drop_duplicates()
8.删除先出现的重复值:
yy['名称'].drop_duplicates(keep='last')
9.数据替换:
yy['名称'].replace('旧', '新')
四、数据预处理
1.数据表合并
1.1 merge
1.2 append
1.3 join
1.4 concat
2.设置索引列:
3.按照特定列的值排序:
4.按照索引列排序:
5.如果prince列的值>3000,group列显示high,否者显示low:
6.对复合多个条件的数据进行分组标记
df_inner.loc[(df_inner['city'] == 'beijing') & (df_inner['price'] >= 4000), 'sign']=1
五、数据提取
1.按索引提取单行数值:
df_inner.loc[3]
2.按索引提取区域行数值:
df_inner.iloc[0:5]
3.重设索引
df_inner.reset_index()
4.设置日期为索引
df_inner=df_inner.set_index('date')
六数据筛选
1.使用“&”进行筛选
df_inner.loc[(df_inner['age'] > 25) & (df_inner['city'] == 'beijing'), ['id','city','age','category','gender']]
2.使用“|”,进行筛选
df_inner.loc[(df_inner['age'] > 25) | (df_inner['city'] == 'beijing'), ['id','city','age','category','gender']].sort(['age'])
3.使用“!=”,进行筛选
df_inner.loc[(df_inner['city'] != 'beijing'), ['id','city','age','category','gender']].sort(['id'])
4.对筛选后的数据按city列进行计数
df_inner.loc[(df_inner['city'] != 'beijing'), ['id','city','age','category','gender']].sort(['id']).city.count()
5.使用query函数进行筛选
df_inner.query('city == ["beijing", "shanghai"]')
6.对筛选后的结果按prince进行求和
df_inner.query('city == ["beijing", "shanghai"]').price.sum()