百科狗-知识改变命运!
--

pythonpandas的5种使用技巧

乐乐1年前 (2023-11-21)阅读数 27#技术干货
文章标签数据

Python正迅速成为数据科学家们更为钟爱的编程语言。形成该现状的理由非常充分:Python提供了一种覆盖范围更为广阔的编程语言生态系统,以及具有一定计算深度且性能良好的科学计算库。

在Python自带的科学计算库中,Pandas模块是最适于数据科学相关操作的工具。本文着重介绍了Python中数据处理的5种方法。

首先导入相关模块并加载数据集到Python环境中:

importpandasaspd

importnumpyasnp

data=pd.read_csv("***.csv",index_col="Loan_ID")

1、Apply函数

Apply函数是处理数据和建立新变量的常用函数之一。在向数据框的每一行或每一列传递指定函数后,Apply函数会返回相应的值。这个由Apply传入的函数可以是系统默认的或者用户自

pythonpandas的5种使用技巧

defnum_missing(x):

returnsum(x.isnull())

#Applyingpercolumn:

print"Missingvaluespercolumn:"

printdata.apply(num_missing,axis=0)

2、填补缺失值

fillna()函数可一次性完成填补功能。它可以利用所在列的均值/众数/中位数来替换该列的缺失数据。下面利用“Gender”、“Married”、和“Self_Employed”列中各自的众数值填补对应列的缺失数据。

fromscipy.statsimportmode

mode(data['Gender'])

3、数据透视表

Pandas可建立MSExcel类型的数据透视表。例如在下文的代码段里,关键列“LoanAmount”存在缺失值。我们可以根据“Gender”,“Married”和“Self_Employed”分组后的平均金额来替换。“LoanAmount”的各组均值可由如下方法确定

4、复合索引

如果您注意观察#3计算的输出内容,会发现它有一个奇怪的性质。即每个索引均由三个数值的组合构成,称为复合索引。它有助于运算操作的快速进行。

从#3的例子继续开始,已知每个分组数据值但还未进行数据填补。具体的填补方式可结合此前学到的多个技巧来完成。

fori,rowindata.loc[data['LoanAmount'].isnull(),:].iterrows():

ind=tuple([row['Gender'],row['Married'],row['Self_Employed']])

data.loc[i,'LoanAmount']=impute_grps.loc[ind].values[0]

#Nowcheckthe#missingvaluesagaintoconfirm:

printdata.apply(num_missing,axis=0)

5、Crosstab函数

该函数用于获取数据的初始印象(直观视图),从而验证一些基本假设。例如在本例中,“Credit_History”被认为会显著影响贷款状态。这个假设可以通过如下代码生成的交叉表进行验证:

pd.crosstab(data["Credit_History"],data["Loan_Status"],margins=True)

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)