端午节的淘宝粽子交易
import pandas as pd
import numpy as np
df1 = pd.read_csv('zongzi.csv')
# 请删除最后一列为缺失值的行,并求所有在杭州发货的商品单价均值
print(df1.info())
# 去掉空格
df1.columns = df1.columns.str.strip()
# 去掉发货地址的缺失值
df1.dropna(axis=0, subset=['发货地址'], inplace=True)
# 去掉发货地址的缺失值
df1.dropna(axis=0, subset=['发货地址'], inplace=True)
# 寻找脏数据
df_hz = df1.loc[df1['发货地址'].str.contains(r'杭州')]
print(df_hz.loc[~df_hz['价格'].str.match(r'^\d+\.?\d+$')])
df_hz.loc[4376, '价格'] = 45
print(df_hz['价格'].astype('float').mean())
# 商品标题带有“嘉兴”但发货地却不在嘉兴的商品有多少条记录
df2 = df1[df1['发货地址 '].map(lambda x:True if '嘉兴'not in x else False)]
print(df2[df2['标题'].map(lambda x:True if '嘉兴' in x else False)].shape[0])
# 请按照分位数将价格分为“高、较高、中、较低、低”5 个类别,再将类别结果插入到标题一列之后,最后对类别列进行降序排序
# 付款人数一栏有缺失值吗?若有则请利用上一问的分类结果对这些缺失值进行合理估计并填充
# 请将数据后四列合并为如下格式的 Series:商品发货地为 ××,店铺为××,共计 ×× 人付款,单价为 ××'
# 请将上一问中的结果恢复成原来的四列