这是我参与8月更文应战的第 5 天,活动概略查看:8月更文应战
咱们好,我是才哥。
我在进行数据处理的时分除了清洗选择处理外还会涉及到核算核算处理,这儿咱们就来介绍一些常见的核算核算函数吧。
1. 数application据预览
本文事例演示数据来自国家数据中心的各区域最近5年的国民生产总值数据,后台回复gdp
能够收取数据文件,便利自己试一试哈。
In [1]: df.head() # 预览前5条数据
Out[1]:
区域工商银行 2020年 2019年 201Go8年appreciate 2017年 2016年
0 北京市 36102.6 35445.1 33106.0 29883.0 27041.2
1 天津市 14083.7 14055.5 13362.9 12450.6 11477.2
2 河北省 36206.9 34978.6 32494.6 30640.8 28474.1
3 山西省 17651.9 16961.6 15958.1 14484.3 11946.4
4 内蒙古自治区 173索引超出了数组边界什么意思59.8交流技巧许医师攻略版电视剧 17212.5 16140.8 14898.1 13789.3
In [2]: df.info() # 查看各Go字段数据类型、数据处理包含数据的搜集条数及空值数
<class 'pandas.core.frame.索引是什么意思DataFrame'>
RangeIndex: 32 entries, 0 to 31
Data col索引失效的几种状况umns (total 6 columns):
# Column Non交流的三要素是什么-Null Count Dtype
--- ------ ----数据处理---------- -----
0 区域 32 non-null object
1 2020年 31 non-null float64
2 2019年 31 non-null float64appreciate
3 2018年 31 non-null float64
4 2017年 31 non-null float64
5 2016年 31 non-null float64
dtyp索引的效果及优缺点es: float6数据处理包含数据的搜集存储加工和输出4(5), object(1)
memory usage: 1.6+ KB
2. 描绘核算
describe
函数办法 能够回来数据集的描绘性核算
Signa数据处理包含数据的搜集ture:
df.describe(数据处理工程师
percentiles=None,
include=None,
exclude=None,
datet宫崎骏ime_is_numeric=False公积金,
) -> 'FrameOrSeries'
Docstring:
Generate descriptive statistics.
关于Dataframe
类型来说,每行对应一个核算政策,别离是总数、均匀值、标准差、最小值、四分位(默许是25/50/75)和最大值。
In [3]: df.describe()
Out[3]:
2020年 2019年 2018年 2017年 2016年
count 31.000000 31.000000 31.000000 3appearance1.000000 31.000000
mean 32658.551613 31687.758065 29索引超出了数组边界什么意思487.661290 26841.819355 24224.148387
std 26661.811640 25848.652250 24136.181387 22161.575235 20008.278500
min 1902.appstore700000 1697.800000 1548.400000 1349.000000 1173.000000
25% 13approach940.650000 13826.300000 13104.700000 12381.800000 11634.800000
50% 25application115.000000 24667.300000 22716.500000 20210.800000 18388.600000
75% 42工商银行612.500000 41110.350000 37交流才能508数据处理包含数据的搜集存储加工和输出.750000 33835.250000 30370.250000
max 110760.900000 107986.900000 9Go9945.200000 91648.700000 82163.200000
上面的描绘性核算表,咱们能够看到2020年一共有31个区域有数据,GDP均值为3.26万亿,最高的11.07万亿,最低的0.19万亿appreciate等。
咱们能够看到,还有参数能够进行自定义选择,效果如下:
percentiles
能够自定指定分位数
In [4]: df.describe(percentiles=数据处理[.2, .4, .6, .8])
Out[4]:
2020年 2019年 2018年 2017年 2016年
count 31.000000 31approach.000000 31.000000 31.000000 31.000000
mean 32658.551613 31687appstore.758065 29487.661290 26841.819355 24224.1483交流的重要性的名言87
std 26661.811640 25848.65数据处理包含数据的搜集运用加工2250 24136.181387 22161.575235 20008.278500
min 1902.700000 1697.800000 1548.4龚俊00000 1349.000000 1173.000000
20% 13枸杞698.500000 13544.400000 1appointment2809.4数据处理包含数据的00000 11159.900000 10427.000000
40% 22156.700000 21237.appear100000 19627.800000 17790.700000 16116.600000
50% 25115.000000 24667.300000 22716.500000 20210.800000 18388.600000
6数据处理包含数据的搜集存储加工和输出0% 36102.600000 34978.600000 32494.600000 29676.200000 26307.700000
80% 43903.900000 45429.000000 42022.000000 37235.000000 33138.500000
max 110760.900000 107986.900000 99945.200000 91648.700000 82163.200000
include
,exclude
别离指定和扫除数据类型,比方
df.describe(include=[np.number]) # 指定数字类型的字段
df.describe(索引贴的用法exclude=[np.float]) # 扫除浮点类型的字段
咱们工商银行客服电话能够看到宫颈癌早期症状,默许状况下descappleribe指定的都是数字类型的,区域字段部分的未参与,如果想索引的效果及优缺点参与能够经过include='all'
来指定。
In [5]: df.describe(include='all')
Out[5]:
区域 2020年 2019年 2018年 2017年 2016年
count 32 31.00 31.00 31.00 31.00 31.00
unique 32 NaN NaN NaN NaN NaN
top 北京市 NaN NaN NaN NaN NaN
freq 1 NaN NaN NaN NaN NaN
... ... ... ... ... ... ...
25% NaN 13940.65 13826.3数据处理0 13104.70 12381.80 11634.80
50% NaN 25115.00 24667.数据处理包含数据的搜集3索引符号0 22716.50 20210.80 18388.60
75% NaN 42612.50 41110.35 37508.75 338交流35.25 30370.25
max NaN 110760.90 107986.90 9枸杞9945.20 91648.70 82163.20
[11 rows x 6 columns]
事例数据中,区域字段下的数据都是object
类型,非数字相关。咱们能够发现在描绘核算效枸杞果中,它新增了unique
、top
和frep
三个政策,相反这三个政策关于纯数字类型的字段列是没有的。这三个政策别离对应非重索引贴复数、最大值和appreciate频率(如有重复的),比方下面这个单独事例:
In [6]: s = pd.Series(['red','bl宫颈癌ue','black','grey','red','grey'])
In [7]: s.describe()
Out[7]:
count 6
unique 4
top red
freq 2
dtype:数据处理包含哪些内容 object
在descripe
函数中还有一个参数datetime_is_numeric
,如果是对时间类型数据的核算描绘需求赋值True
。
In [8]: s =交流技巧许医师攻略版电视剧 pd.S数据处理包含数据的eries([np.datetime64("2000-01-01"),
...: np.datetime64("2010-01-01"),
...: np.dateti索引页是哪一页me64("2010-数据处理包含数据的搜集01-01")
...: ])
In [9]: s.describe()
FutureWarning: Tr数据处理包含数据的搜集存储加工和输出eating datetime data as categorical rather than numeric in `数据处理包含数据的.describe` is deprecated and will be removed in a future version of pandas. Specify `datetime_is_numeric=True` to silence this warning and adopt the future behavior now.
s.describe()
Out[9工商银行客服电话]:
count 3
unique 2appreciate
top 2010-数据处理01-01 00:00:00
freq 2
first 2000-01-01 00:00:00
last 2010-01-01 00:00:00
dtype: object
In [10]: s.describe(dateti公积金me_is_numeric=Tr索引失效ue)
Out[10]:
count 3
mean 2006-09-01 08:00:00
min 2000-01-01 00:00:00
25% 2索引符号004-12-31 12:00:00
50% 2010-01-01 00:00:00
75% 2010-01-01 00:00:00
max 2010-01-01 00:00:00
dtype: object
在咱们日常数据索引页是哪一页处理中,除了描绘核算里的这些核算维度外,咱们还会用到其他一些核算核算,比方方差、众数等等。
3. 核算核算
这儿咱们演示常见的核appointment算核算函数办法,默许状况下都是按列核算,咱们也能够指交流的重要性的名言定按行,具体见下方演示
# 最大值
In [11]: d索引f.max(numeric_only=True)
Out[1数据处理包含数据的1]:
2020年 110760.9数据处理工程师
2019年 107986.9
2018年 99945.2
2017年 91648.7
2016年 82163.2
dtype: float64
# 最小交流的重要性心得体会值
In [12]: df.min(numeric_only=True)
Out[12]:
2020年 1902.7
2019年 1697.8
2018年 1548.4
2017年 1349.0
2016年 1173.0
dtype: float64
# 均匀值 (核算项索引页是哪一页的核算,主张指定数据交流技巧类型为仅数字,能够经过axis指定是部队,默许是列)
In [13]: df.mean(axis=1, numeric_only=True)
Out[13]:
0 32315.58
1 13085.98
2 32559.00
3 15400.46
...
28 2683.66
29 3432.18
30 12198.96
31 NaN
Length: 32, dtyp交流才能e: float64
以下部分不做具体演示,仅介绍函数功用,所有这些在运用的时appear分都要留意下原始数据类型,非数字类型或许交流技巧许医师攻略版电视剧会呈现报错
df.sum() # 求和
df.corr() # 相关系数
df.cov() # 协方差
df.count() # 非空计数索引贴
df.a狗狗币bs() # 必定值
df.median() # 中索引位数
df.mode() # 众数
df.std() # 标准差
df.var() # 无偏方差
df.sem() # 均值的标准误差
df.mad() # 均匀必定差
df.p交流的重要性心得体会rod() # 连乘
df.cumprod() # 累乘
df.cu索引的效果及优缺点msum() # 累加
df.nunique() # 非重复计数
df.idxmax() # 最大值索引名(留意是索引名,差异于argmax)
df.idxmin(appreciate) # 最小值索引名
df.sample(5) # 随机抽样5条数据
df.ske数据处理包含数据的w() # 样本偏度(第三阶)
df.kurt() # 样本偏度(第四阶)
df.quantile() # 样本分位数
df.rank() # 排名
df.pct_change() # 改变率
df.value_counts() # 不重复值及数量
s.argmax() # 最大值索引(自动索引),dataframe没有
s.索引是什么意思argmin() # 最小值索引(自动索引),dataframe没有
其实,在每个函数中都有其他参数能够让appearance函数功用更强健,具体咱们能够自行检验哈,咱们这儿简略举个别比方。
>>> s = pd.Series([90, 91, 85])
>>> s
0 90
1 91
2 85
dtype: int6数据处理包含数据的4
>>> s.pct_change()
0 NaN
1 0.011111
2 -0.065934
dtype: flo枸杞at64
>>> s.pct_change(periods=2) # 隔2行求改变率(默许是隔1行)
0 NaN索引贴的用法
1 Na索引是什么意思N
2 -0.055556
dtype: flo数据处理包含数据的搜集存储加工和输出at64
除了上述这些函数外,以下几个函数咱们也常用到
# 某列最大的前5行数据
In [14]: df.nlargest数据处理办法有哪些(5,columns='2020年')
Out[14]:
区域 2020年 2019年 2018年 2017年 2016年
18 广东省 110760.9 1079索引失效的几种状况86.9 999数据处理的最小单位是45.2 9appreciate1648.7 82163.2
9 江苏省 102719.0 98交流才能656.8 93207.6 85869.8 77350.9
14 山东省 73129.0 70540.5 66648.9 63012.1 58宫崎骏762.5
10 浙江省 64613.3 6appreciate2462.0 58002.8 52403.1 47254.0
15 河南省 54997.1 53717.8 49935.9 44824.9 40249.3
# 某列最小的前五索引是什么意思行数据
In [15]: df.nsmallest(5,columns='2020年')
Out[15]:
区域 2020年 2019年 2018年 2017年 2016年
25 西藏自治区 1902.7 1697.8 1548.4 1349.0 1173.0
28 青海省 3005.9 2941.1 2748.0 2465.1 2258.2
29 宁夏回族自治区 392交流的三要素是什么0.5 3748.5 3510.2 3200.3 2781.4
20 海南省 5532.4 5330.8 4910.7 4497.5 4090.2
27 甘肃省 9016.7 8718.3 8104.1 7336.7 6907.9
加减乘除四则运算等
能够用运算符号,也能够用函数狗狗币办法;相同能够传一个交流的重要性的名言值,也能够传一个DataFrame
或Serice
。
'''
Among flexible wra索引是什么意思ppers
(`add`, `sub`, `mul`, `divapprove`, `mod`, `pow`)
to arithmetic
operators:
`+`, `-`, `*`, `/`, `//`, `%`, `**`.
'''
df + 1
df.add(1)
以上便是本次全部内容,感兴趣的交流技巧许医师攻略版电视剧小伙伴能够自己跑一跑代码试试,或许添加作者微信一同交流哦!