简单数据处理
查看是否存在重复值:
data.duplicated().any()
数据类型转换:
data[id]=data['id'].astype(str)
data['custom_amt']=data['custom_amt'].str[1:].astype(float)
data['order_date']=pd.to_datetime(data['order_date'],format='%Y年%m月%d日')
查看变量是否存在空值及所占比列:
data.isnull().sum()/data.shape[0]
空值删除三部曲:
x = data.gender.isnull()
na_index = data.index[x]
new2_data = data.drop(labels=na_index,axis=0)
new2_data.isnull().any()
空值填充:
data.fillna(value={'gender':data.gender.mode()[0],
'age':data.age.mean()},inplace=True)
data.isnull().any()
matplotlib中文及正负号显示问题:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 显示正负号
plt.style.use('ggplot')
%matplotlib inline
基于箱线图异常值的探测:
Q1 = data.counts.quantile(q=0.25)
Q3 = data.counts.quantile(q=0.75)
low = Q1-1.5*(Q3-Q1)
up = Q3+1.5*(Q3-Q1)
data.counts[(data.counts<low)|(data.counts>up)]