1.导入数据源
#导入相关库
import pandas as pd
import numpy as np
import os
from pandas import DataFrame,Series
import re
df =pd.read_csv(r‘E:\work\daima\python\forestfires.csv‘) #打开文件
2.数据基本处理
1)查看列名和数据类型
print(df.columns) #查看列名
print(df.dtypes) #查看各列数据类型
2)查看指定行列数据
print(df.head(20)) #查看前20行数据
df=df.loc[:,‘FFMC‘:‘rain‘] #选择FFMC到rain列所有数据
3)删除行或列
df=df.drop([‘wind‘, ‘rain‘, ‘area‘],axis=1) #删除wind,rain和area三列
df_an=df_an.loc[-(df_an[‘qudao‘]==‘Total‘)] #删除qudao列等于‘Total‘的行
4)移除重复数据
df_new=df.drop_duplicates([‘month‘,‘day‘]) #移除month和day列包含重复值得行,保留第一个
df_new=df.drop_duplicates([‘month‘],take_last=True )#移除month列包含重复值得行,保留最后一个
5)更改列名
df.rename(columns={‘ISI‘:‘isi‘}, inplace = True) #ISI列列名改为isi
2.描述性统计
1)计算某列变量频数
print(df[‘month‘].unique()) #输出month列唯一值
print(df[‘month‘].value_counts()) #输出month列各变量出现频数
2)分段统计
bins=[0,10,20,30,40,50,60,70,80,90,100]
group_names=[‘0-10‘,‘10-20‘,‘20-30‘,‘30-40‘,‘40-50‘,‘50-60‘,‘60-70‘,‘70-80‘,‘80-90‘,‘90-100‘]
cats=pd.cut(df[‘RH‘],bins,labels=group_names)
pd.value_counts(cats,sort=False)
3)添加一列分组列,做多维频数统计
bins=[0,10,20,30,40,50,60,70,80,90,100]
group_names=[‘0-10‘,‘10-20‘,‘20-30‘,‘30-40‘,‘40-50‘,‘50-60‘,‘60-70‘,‘70-80‘,‘80-90‘,‘90-100‘]
cats=pd.cut(df[‘RH‘],bins,labels=group_names)
df_concat=pd.concat([df,cats],axis=1,ignore_index=True)
df_group=df_concat[