原因 :
字段超出范围,一般都是超出 int 范围
解决 :
DataFrame类型后面加上 astype() 里面再加上要更改的类型
例子 :
有一个二氧化碳温室气体排放的数据,
里面记录了每个国家近30、40年来的历年排放数据
我要统计 每个国家在2000年到2010年这十年二氧化碳温室气体等排放总量
思路 :
首先 先找出年份在2000年到2010年出现的数据
然后 对找出符合年份的数据的国家 groupby 分类
再按照排放量进行累加
总结出现的问题 :
1.
再匹配符合的年份的时候 , 犯了二 , 报了一个错
问题代码 :
报错:
原因 :
匹配年份再2000年到2010年的时候忘记加括号了。。。
解决 :
问题解决 :
2.
这个不算遇到的问题,写在这是为了让我自己记住有这么个东西
以免浪费时间再处理数据类型转换上
照理说
groupby 返回的是一个 <class 'pandas.core.groupby.generic.DataFrameGroupBy'>
groupby.groups 返回的是一个<class 'pandas.io.formats.printing.PrettyDict'>
这个时候要是对这个series进行一个转换,转成DataFrame类型,输出的结果是这种:
数据确实有按国家进行划分,也都对这十年排放量进行了累加,但是看着不舒服
后期画图操作个人来说不是很方便
所以我要将这个二维的DataFrame转换成一维的,那么要怎么转换呢
再一开始的 groupby 那里 增加一个 as_index = False
输出结果 :
3.
上面 DataFrame 输出的十年来二氧化碳排放总量呈现的是一个科学计数法形式
原因是超出了类型范围
对 DataFrame 的类型进行更改 astype()
这里我的数据量较大,我更改成了 str字符串类型
这样它就不是科学计数法的形式了