import pandas as pd
df=pd.read_excel('TB2018.xls')
#df['宝贝总数量']=df['宝贝总数量'].fillna(6) #fillna()补齐缺失值
#df['宝贝总数量']=df['宝贝总数量'].bfill() #ffill()用上一个值填充,bfill()用下一个值
print(df)
#缺失值查看与处理
#print(df.info())
#print(df.isnull()) #判断是否为空
#print(df.dropna()) #直接删除空值所在行 指定参数how='all'删除所有空行
#print(df[df['宝贝总数量'].notnull()]) #保留特定行
#重复值处理
#print(df.duplicated()) #判断每一行是否重复
#print(df.drop_duplicates()) #去除全部重复值
#print(df.drop_duplicates(['买家会员名'])) #去除指定列的重复值
#print(df.drop_duplicates(['买家会员名'],keep='last')) #last保留重复行的最后一行,默认first保留第一个,false则去除全部
import pandas as pd
s1=pd.Series([11,22,33],index=[1,2,3])
print(s1)
#print(s1.reindex([1,2,3,4,5],fill_value=0)) #reindex更换索引 fill_value指定填充值,默认为NaN
#print(s1.reindex([1,2,3,4,5],method='bfill')) #ffill向前填充,bfill向后填充
import pandas as pd
data=[[11,22,33],[44,55,66],[77,88,99]]
index=['a','b','c']
columns=['aaa','bbb','ccc']
df=pd.DataFrame(data=data,index=index,columns=columns)
print(df)
#print(df.reindex(['a','b','c','d','e'])) #重新设置行索引,新索引名行值为NaN
#print(df.reindex(columns=['aaa','bbb','ccc','ddd'])) #columns设置列索引 可同时设置
import pandas as pd
df=pd.read_excel('1月.xlsx')
print(df.head(5))
#print(df.set_index(['买家会员名']).head(5))
#print(df.set_index(['买家会员名'],drop=True).head(5)) #将某列设置为行索引
#print(df.set_index(['买家会员名'],drop=False).head(5)) #true会删除该列,false保留,默认true
#数据清洗后设置连续索引
print(df.dropna().reset_index(drop=True).head(5))
import pandas as pd
df=pd.read_excel('mrbook.xlsx')
print(df)
#print(df.sort_values(by='销量',ascending=False)) #ture 升序,默认 false降序
#print(df.sort_values(by=['图书名称','销量']))
#df1=df.groupby(['类别'])['销量'].sum().reset_index() #分组统计
#print(df1)
#print(df1.sort_values(by='销量').reset_index())
#df=dfrow.sort_values(by=0,axis=1) #按行排列数据类型要一致
#数据排名
df=df.sort_values(by='销量')
df['顺序排名']=df['销量'].rank(method='max')
print(df[['图书名称','销量','顺序排名']])