今天从26个字母中精选出22个Pandas常用的函数,将它们的使用方法简单介绍给大家,详细内容可以查看官网学习。
import pandas as pd
import numpy as np
Pandas中一个很实用的函数,下面模拟了一份数据:
我们分别将python的内置函数、自定义函数、匿名函数传给apply函数:
使用Python的匿名函数来进行传递:
start_time,
end_time,
include_start=NoDefault.no_default,
include_end=NoDefault.no_default,
inclusive=None,
axis=None
来自官网的案例:
如果在参数中,开始时间大于结束时间,则会呈现不同的结果:
针对Series中的包含字符信息:
删除数据中的重复值;可以选择根据某个或者多个字段来删除。
在删除数据的时候,默认保留的是第一条重复的数据,我们可以通过参数keep来指定保留最后一条
这是一个窗口函数,实现的是一种类似累计求和的功能
DataFrame.expanding(
min_periods=1,
center=None,
axis=0,
method='single')
模拟了一份数据:
分别指定1-2-3不同的窗口数:
我们发现:当窗口数大于前面的记录数,则累计和用NaN表示
用来进行数据的过滤操作
进行比较的一个函数:ge表示greater equal
pandas内置的绘制直方图的函数
df4 = pd.DataFrame({
'length': [1.5, 0.5, 1.2, 0.9, 3],
'width': [0.7, 0.2, 0.15, 0.2, 1.1]
}, index=['pig', 'rabbit', 'duck', 'chicken', 'horse'])
hist = df4.hist(bins=3)
iterrows函数用于对DataFrame进行迭代循环
join函数用于合并不同的DataFrame
用于查找一组数据中的峰度值
kurtosis(axis=index(0) or columns(1),
skipna=True,
level=None,
numeric_only=None,
**kwargs)
如果给定的数据中存在缺失值,可以使用参数skipna直接跳过:
s1 = pd.Series([10,None,16,14,30,None])
s1
0 10.0
1 NaN
2 16.0
3 14.0
4 30.0
5 NaN
dtype: float64
s1.kurtosis(skipna=True)
2.646199227619398
这是一个用在基于时间数据选择上的函数
i = pd.date_range('2018-04-09', # 起始日期
periods=4, # 周期
freq='2D') # 频率、间隔
i
DatetimeIndex(['2018-04-09', '2018-04-11', '2018-04-13', '2018-04-15'], dtype='datetime64[ns]', freq='2D')
注意:在这里返回的日历中3个日的数据,而不是数据中的3行记录。13-14-15刚好是3天
4个基于统计概念的函数:最大值、最小值、均值、中位数
选择前n个的数据,其语法如下:
nlargest(n, columns, keep='first')
下面的例子来自官网:
df7 = pd.DataFrame({
'population': [59000000, 65000000, 434000,434000,
434000, 337000, 11300,11300, 11300],
'GDP': [1937894, 2583560 , 12011, 4520,
12128,17036, 182, 38, 311],
'alpha-2': ["IT", "FR", "MT", "MV", "BN",
"IS", "NR", "TV", "AI"]},
index=["Italy", "France", "Malta",
"Maldives", "Brunei", "Iceland",
"Nauru", "Tuvalu", "Anguilla"])
# 记录每个国家的人口数、GDP和名称2位大写
df7
keep参数在不同取值下的结果:
表示删除某个属性或者字段信息
quantile就是分位数的意思,函数具体的语法规则为:
DataFrame.quantile(
q=0.5,
axis=0,
numeric_only=True,
interpolation=’linear’)
reset就是重置的含义,index就是行索引;连起来就是重置行索引
df9 = pd.DataFrame({"fruit":["苹果","香蕉","橙子","橙子","苹果","橙子"],
"amount":[100,200,130,150,88,40]})
df9
当我们统计每种水果的总销售额,是否使用reset_index函数的不同效果:
根据字段类型来筛选数据,可以包含或者排除一个或者多个字段类型的数据。
下面是官网的案例,稍作修改:生成了3个不同数据类型的字段
1、包含字段类型
2、排除字段类型
也是选择数据的一个函数,具体语法为:
take(indices, axis=0, is_copy=None, **kwargs)
下面是多个例子:
以第一个例子来解释,指定数据的记录为0和4。表示取出df10中的第1条和第5条数据(索引从0开始),而不是看我们自定义的索引号。
更新某个DataFrame数据框;模拟两个数据:
第一次更新的结果:
如果用于更新的数据中存在空值,则保持原来的数据不变
用于求一组数据的方差
用于查找满足条件的数据
w = pd.Series(range(5))
w
0 0
1 1
2 2
3 3
4 4
dtype: int64
# 满足条件的显示;不满足的用空值代替
w.where(w>=2)
0 NaN
1 NaN
2 2.0
3 3.0
4 4.0
dtype: float64
# 不满足的用8替代
w.where(w>=2, 8)
0 8 # 8代替
1 8
2 2
3 3
4 4
dtype: int64
- END -
对比Excel系列图书累积销量达15w册,让你轻松掌握数据分析技能,可以在全网搜索书名进行了解选购:
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/junhongzhang/article/details/124113446
内容来源于网络,如有侵权,请联系作者删除!