kaggle实战之海冰面积序列数据的分析(2):数据预处理

本文主要为笔者学习kaggle实战项目“Daily sea ice exten data”时心得笔记,项目主要利用NSIDC提供的每日海冰面积(sea ice extent)数据进行数据分析,学习源代码为Mathew Savage:visualisation of sea-ice data,仅供交流参考。

  • kaggle实战之海冰面积序列数据的分析(1):库的载入
  • kaggle实战之海冰面积序列数据的分析(2):数据预处理
  • kaggle实战之海冰面积序列数据的分析(3):时间序列分析

2 数据预处理

2.1 导入数据

因为NSIDC提供的数据为csv文件,直接利用pd.read_csv()读取

#load the data
sie=pd.read_csv('F:/program/kaggle/SIE/sie/seaice.csv')

2.2 观察数据

输入sie.head(3),观察数据前三行

kaggle实战之海冰面积序列数据的分析(2):数据预处理_第1张图片
图片.png

同时利用 sie.info()列出各项基本信息
kaggle实战之海冰面积序列数据的分析(2):数据预处理_第2张图片
图片.png

观察数据发现,我们需要对数据做的处理如下:

  • Source data 与研究无关,因此可以删掉使用pd.drop
  • Year,month,day需转换为datetime型数据pd.to_datetime
  • hemisphere为分类数据,包括“north”和“south”两类,在研究时可以考虑用0/1转换为数值型,这里为了对南北进行对比,利用这一项将数据划分为了两类利用
    pd.drop()
sie.drop('Source Data',axis=1,inplace=True)

pd.to_datetime()
aixs=1表示删除列,inplace=True表示可以就地填充可省略。

sie['Date']=pd.to_datetime(sie[['Year','Month','Day']])
sie.index=sie['Date'].values

将三项合并为datetime类变量Date,同时将其作为sie数据的索引
数据的split

north=sie[sie['hemisphere']=='north']
south=sie[sie['hemisphere']=='south']

2.3 处理后数据

sie.head(1)

图片.png

north.head(1)
图片.png

south.head(1)
图片.png

2.4 小结

学习要点:
pd.drop() 删除指定轴
pd.to_datetime() 转变数据为datetime类型

2.5 完整代码

#load the data
sie=pd.read_csv('F:/program/kaggle/SIE/sie/seaice.csv')
sie.head(3)
sie.info()
# drop the 'Source data'
sie.drop('Source Data',axis=1,inplace=True)
#convert the provided 3 cols to datetime
sie['Date']=pd.to_datetime(sie[['Year','Month','Day']])
sie.index=sie['Date'].values
sie.head(1)
#split according to hemisphere,as we are expecting different trends for each
north=sie[sie['hemisphere']=='north']
south=sie[sie['hemisphere']=='south']

你可能感兴趣的:(kaggle实战之海冰面积序列数据的分析(2):数据预处理)