
features()函数用法,map(function, iterable)
参数:map 可以接受两个参数,第一个是函数,第二个是可迭代对象
作用:将可迭代对象的每一个元素放在 function 中进行处理
返回:map 返回的是一个 map 对象,这是一个可迭代对象
几周前,R语言社区经历了一场关于画图工具的讨论。对于我们这种外人来说,具体的细节并不重要,但是我们可以将一些有用的观点运用到 Python 中。讨论的重点是 R 语言自带的绘图工具 base R 和 Hadley Wickham 开发的绘图工具 ggplot2 之间的优劣情况。如果你想了解更多细节内容,请阅读以下几篇文章:
其中最重要的两个内容是:
不是所有人都认同第二个观点,ggplot2确实无法绘制出所有的图表类型,但是我会利用它来做分析。
以下是 2016 年 4 月写的关于绘图工具的概述。出于多方面的原因,绘图工具的选取更多地取决于个人偏好,因此本文介绍的 Python 绘图工具也仅代表我的个人使用偏好。
Matplotlib 是一个强大的工具,它是 Pandas' builtin-plotting 和 Seaborn 的基础。 Matplotlib 能够绘制许多不同的图形,还能调用多个级别的许多 API 。我发现 pyplot api 非常好用,你可能用不上 Transforms 或者 artists ,但是如果你有需求的话可以查阅帮助文档。我将从 pandas 和 seaborn 图开始介绍,然后介绍如何调用 pyplot 的 API 。
DataFrame 和 Series 拥有 plot 的命名空间,其中有许多图形类别可供选择(line, hist, scatter, 等等)。 Pandas 对象还提供了额外的用于增强图形展现效果的数据,如索引变量。
由于 pandas 具有更少的向后兼容的限制,所以它具有更好的美学特性。从这方面来说,我认为 pandas 中的 DataFrameplot 是一个非常实用的快速探索性分析的工具。
Michael Waskom 所开发的 Seaborn 提供了一个高层次的界面来绘制更吸引人统计图形。 Seaborn 提供了一个可以快速探索分析数据不同特征的 API 接口,接下来我们将重点介绍它。
Bokeh 是一款针对浏览器开发的可视化工具。
和 matplotlib 一样,Bokeh
拥有一系列 API 接口。比如 glpyhs 接口,该接口和 matplotllib 中的 Artists 接口非常相似,它主要用于绘制环形图、方形图和多边形图等。最近 Bokeh 又开放了一个新的图形接口,该接口主要用于处理词典数据或 DataFrame 数据,并用于绘制罐头图。
以下是一些本文没有提到的可视化工具:
我们将利用 ggplot2 中的 diamonds 数据集,你可以在 Vincent Arelbundock's RDatasets 中找到它(pdread_csv(' >
Python对于Excel的 *** 作是多种多样的,掌握了相关用法就可以随心所欲的 *** 作数据了!
*** 作xls文件
xlrd(读 *** 作):
import xlrd
1、引入xlrd模块
workbook=xlrdopen_workbook("36xls")
2、打开[36xls]文件,获取excel文件的workbook(工作簿)对象
names=workbooksheet_names()
3、获取所有sheet的名字
worksheet=workbooksheet_by_index(0)
4、通过sheet索引获得sheet对象
worksheet为excel表第一个sheet表的实例化对象
worksheet=workbooksheet_by_name("各省市")
5、通过sheet名获得sheet对象
worksheet为excel表sheet名为各省市的实例化对象
nrows=worksheetnrows
6、获取该表的总行数
ncols=worksheetncols
7、获取该表的总列数
row_data=worksheetrow_values(n)
8、获取该表第n行的内容
col_data=worksheetcol_values(n)
9、获取该表第n列的内容
cell_value=worksheetcell_value(i,j)
10、获取该表第i行第j列的单元格内容
xlwt(写 *** 作):
import xlwt
1、引入xlwt模块
book=xlwtWorkbook(encoding="utf-8")
2、创建一个Workbook对象,相当于创建了一个Excel文件
sheet = bookadd_sheet('test')
3、创建一个sheet对象,一个sheet对象对应Excel文件中的一张表格。
sheetwrite(i, j, '各省市')
4、向sheet表的第i行第j列,写入'各省市'
booksave('Data\\36xls')
5、保存为Data目录下36xls文件
*** 作xlsx文件
openpyxl(读 *** 作):
import openpyxl
1、引入openpyxl模块
workbook=openpyxlload_workbook("36xlsx")
2、打开[36xlsx]文件,获取excel文件的workbook(工作簿)对象
names=workbooksheetnames
worksheet=workbookworksheets[0]
worksheet=workbook["各省市"]
ws = workbookactive
6、获取当前活跃的worksheet,默认就是第一个worksheet
nrows=worksheetmax_row
7、获取该表的总行数
ncols=worksheetmax_column
8、获取该表的总列数
content_A1= worksheet['A1']value
9、获取该表A1单元格的内容
content_A1=worksheetcell(row=1,column=1)value
10、获取该表第1列第1列的内容
openpyxl(写 *** 作):
workbook=openpyxlWorkbook()worksheet = workbookactive
3、获取当前活跃的worksheet,默认就是第一个worksheet
worksheettitle="test"
4、worksheet的名称设置为"test"
worksheet = workbookcreate_sheet()
5、创建一个新的sheet表,默认插在工作簿末尾
worksheetcell(i,j,'空')
6、第i行第j列的值改成'空'
worksheet["B2"]="空"
7、将B2的值改成'空'
worksheetinsert_cols(1)
8、在第一列之前插入一列
worksheetappend(["新增","台湾省"])
9、添加行
workbooksave("Data\\36xlsx")
10、保存为Data目录下36xlsx文件
pandas处理excel文件
pandas *** 作:
import pandas as pd
1、引入pandas模块
data = pdread_excel('36xls')
2、读取[36xls]或者[36xlsx]文件
data = pdread_csv('36csv')
3、读取[36csv]文件
data=datadropna(subset=['店铺'])
4、过滤掉data店铺列有缺失的数据
datasort_values("客户网名", inplace=True)
5、将data数据按照客户网名列进行从小到大排序
data = pdread_csv(36csv, skiprows = [0,1,2],sep = None, skipfooter = 4)
6、读取[36csv]文件,前三行和后四行的数据略过
data = datafillna('空')
7、将data中的空白处填充成'空'
datadrop_duplicates('订单','first',inplace=True)
8、data中的数据,按照订单列做去重处理,保留第一条数据
data=pdDataFrame(data,columns=['订单','仓库'])
9、只保留data中订单仓库列的数据
data = data[(data[u'展现量'] > 0)]
10、只保留展现量列中大于0的数据
data= data[data["订单"]strcontains('000')]
11、只保留订单列中包含'000'的数据
data= data[data["仓库"]=='正品仓']
12、只保留仓库列是'正品仓'的数据
xs= data[data["店铺"]=='南极人']['销售额']
13、获取店铺是南极人的销售额数据
data['订单'] = data['订单']str[3:7]
14、订单列的值只保留4-8个字节的值
data["邮资"] = npwhere((data['店铺']strcontains('T|t')) & -(data['仓库'] == '代发仓'), 8, data['邮资'])
15、满足店铺列包含 T 或 t 并且仓库不等于'代发仓'的话,将邮资的值改成8,否则值不变
data = nparray(data)tolist()
16、将data从DataFrame转换成列表
data=pdDataFrame(data)
17、将列表转换成DataFrame格式
zhan = data[u'展现']sum()round(2)
18、将data中所有展现列数据求和,并取两位小数
sum=datagroupby(['店铺'])['刷单']sum()
19、将data中按照店铺对刷单进行求和
counts=data['店铺']value_counts()
20、将data按照店铺进行计算
avg=datagroupby(['店铺'])['刷单']mean()
21、将data按照店铺对刷单进行求平均数
count = pdconcat([counts,sum], axis=1, ignore_index=True, sort=True)
22、将counts和sum两个DataFrame进行了组合
count=countrename(index=str, columns={0: "订单", 1: "成本"})
23、将新生成的DataFrame列名进行修改
data = pdmerge(sum, counts, how='left', left_on='店铺', right_on='店铺')
24、将列表转换成DataFrame格式
from openpyxl import Workbook
wb=Workbook()
ws1=wbactive
datato_excel('36xlsx')
wbclose()
25、data完整的写入到关闭过程,执行此 *** 作的时候36xlsx不能是打开状态
excel格式 *** 作
样式处理:
1、打开36xlsx
sheet=workbookworksheets[0]
2、将第一个sheet对象赋值给sheet
sheetcolumn_dimensions['A']width = 200
3、将A列的宽度设置为20
sheetrow_dismensions[1]height = 200
4、将第一行的行高设置为20
sheetmerge_cells('A1:A2')
5、将sheet表A1和A2单元格合并
sheetunmerge_cells('A1:A2')
6、将sheet表A1和A2单元格取消合并
sheetinsert_rows(2,2)
7、将sheet表从第2行插入2行
sheetinsert_cols(3,2)
8、将sheet表从第3列插入2列
sheetdelete_rows(2)
9、删除第2行
sheetdelete_cols(3, 2)
10、将sheet表从第3列开始删除2列
from openpyxlstyles import Font, Border, PatternFill, colors, Alignment
11、分别引入字体、边框、图案填充、颜色、对齐方式
sheetcell(i,j)font = Font(name='Times New Roman', size=14, bold=True, color=colorsWHITE)
12、设置sheet表第 i 行第 j 列的字体
sheetcell(i,j)alignment = Alignment(horizontal='center', vertical='center')
13、设置sheet表第 i 行第 j 列的字体对齐方式
left, right, top, bottom = [Side(style='thin', color='000000')] 4sheetcell(i,j)border = Border(left=left, right=right, top=top, bottom=bottom)
14、引入边框样式并调用
fill = PatternFill("solid", fgColor="1874CD")sheetcell(1,j)fill = fill
15、引入填充样式,并调用
import xlrd
from openpyxl import Workbook
from openpyxl import load_workbook
workbook=load_workbook(filename='C:/Users/EDZ/Desktop/工作/20210803/大兄弟xlsx')
sheet=workbookactive
sheetinsert_cols(idx=1)
sheetmerge_cells(A1:A3)
sheet['A1']=['上海','山东','浙江']
大家好,我是Peter~
在很多情况下,我们都需要处理PDF格式的文件。尤其当我们遇到PDF表格数据需要进行提取,真的是一个令人头疼的问题。
因为PDF文件不能像Word那样直接复制,即使复制了再黏贴也可能会出现格式排版错乱甚至乱码问题。如何从一个PDF文件提取出表格数据?本文提供两个解决方案:
首先提供的一种方法是从文字 PDF 中提取表格信息的工具:Camelot,它能够直接将大部分表格转换为 Pandas 的 Dataframe。
更多的详细信息,请参考项目地址: >
以上就是关于强烈推荐一款Python可视化神器!强烈必备!全部的内容,包括:强烈推荐一款Python可视化神器!强烈必备!、pandas常用函数汇总、features()函数用法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)