首页 >> 大全

【Python3 爬虫学习笔记】Pandas:强大的数据处理套件 2

2023-11-23 大全 27 作者:考证青年

数据的修改及排序 数据的修改

修改数据的操作非常简单,只需要把上例中读取的数据项设定为指定值即可。例如,把陈聪明的数学成绩修改为91:

df.ix["陈聪明"]["数学"] = 91

或把陈聪明的所有成绩都改为80:

df.ix["陈聪明", :] = 80

数据的排序

提供了两种数据排序功能。

第1种排序功能是根据指定列标题下面的值进行排序,语法为:

数据变量 = df.sort_values(by=列表[, ascending=布尔值])

df1 = df.sort_values(by="数学", ascending=False)

第2中排序功能是根据行标题或列标题进行排序,语法为:

数据变量 = df.sort_index(axis=行列值[, ascending=布尔值])

df2 = df.sort_index(axis=0)

删除数据

可通过drop()方法删除数据,语法为:

数据变量 = df.drop(行标题或列标题[, axis=行列值])

df1 = df.drop("陈聪明")    # axis参数可省略

_python3爬虫入门教程_python3爬虫抓取图片

执行结果:

删除数学(列标题)成绩:

df2 = df.drop("数学", axis = 1)

若删除的行或列超过1个,需使用列表作为参数,例如删除数学及自然成绩:

df3 = df.drop(["数学", "自然"], axis=1)

如果删除的列或行项目很多且连续,可使用删除“范围”的方式来处理。删除连续行的语法为:

数据变量 = df.drop(df.index[开始数值:结束数值][,axis=行列值]

执行结果会删除“开始数值”到“结束数值-1”行,例如删除第2行到第4行(陈聪明、黄美丽、熊小娟)的成绩:

df4 = df.drop(df.index[1:4])

删除连续列的语法为:

数据变量 = df.drop(df.columns[开始数值:结束数值][,axis=行列值]

例如,删除第2列到第4列(数学、英文、自然)成绩:

df5 = df.drop(df.columns[1:4], axis=1)

导入数据

有时候,手工生成的数据是件非常麻烦的事情,所以我们通常会先把数据保存在Excel表格或数据库中,然后再把数据导入。我们还可以直接从网页中抓取表格数据并导入到中,作为数据。

常用的导入数据方法有:

方法说明

导入表格型数据(*.csv)

导入 Excel型数据(*.xlsx)

导入数据库型数据(*.)

导入Json型数据(*.json)

导入网页中的表数据(*.html)

的()方法会用到包,安装该包:

conda install html5lib

以中国历年GDP数据表为例:

import pandas as pd
tables = pd.read_html("http://value500.com/M2GDP.html")

其中,()方法返回列表,列表中的每一个元素是网页中的一个表格。有时候一个网页有多个表格,需要我们以手动方式在网页的源代码中通过"

import pandas as pd
tables = pd.read_html("http://value500.com/M2GDP.html")
n = 1
for table in tables:print("第 " + str(n) + " 个表格:")print(table.head())print()n += 1

import pandas as pd
tables = pd.read_html("http://value500.com/M2GDP.html")
table = tables[18]
table = table.drop(table.index[[0,1]])
table.columns = ["年份", "M2指标", "GDP绝对额", "M2/GDP"]
table.index = range(len(table.index))
print(table)

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了