前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python语言学习:pip工具使用知识,模型保存pickle,PDF与docx相互转换处理

Python语言学习:pip工具使用知识,模型保存pickle,PDF与docx相互转换处理

作者头像
陆勤_数据人网
发布2022-01-20 15:42:57
5130
发布2022-01-20 15:42:57
举报

这一周的Python语言学习,记录如下。

01

pip工具使用知识

1 pip是什么?

pip是一个用Python写的用于安装和管理包的包管理系统。它连接一个叫做Python Package Index的在线公共包存储库。它通过配置,也可以连接其它包库。

2 pip使用知识

2.1 安装包

常用命令

代码语言:javascript
复制
pip install some-package-name

若需要指定特定的版本安装

代码语言:javascript
复制
pip install some-package-name==1.2.2 --force-reinstall

force-reinstall用于指示重新安装指定版本的包。

也可以指定版本的范围安装

代码语言:javascript
复制
pip install some-package-name>=1.3.0,<1.4.0 --force-reinstall
2.2 卸载包

卸载包很容易,执行如下操作

代码语言:javascript
复制
pip uninstall some-package-name
2.3 从Python工作环境的requirement.txt的文件安装包

例如,我们有一个Python工作环境的requirement.txt文件。

代码语言:javascript
复制
pandas==1.2.5
numpy==1.21.1

安装这些包

代码语言:javascript
复制
pip install -r requirement.txt
2.4 如何生成requirement.txt文件

我们进入自己的Python工作环境,使用如下命令,获取工作环境的配置包文件

代码语言:javascript
复制
pip freeze > requirement.txt
2.5 获取已经安装包的信息

我们想知道已经安装了那些Python包

代码语言:javascript
复制
pip list

进一步,结合grep命令,搜索到你感兴趣包的是否安装。

代码语言:javascript
复制
pip list | grep pandas
2.6 了解包更详细信息

我们想了解包更详细的信息

代码语言:javascript
复制
pip show some-package-name
2.7 检查包之间兼容问题

我们想了解包之间兼容的信息

代码语言:javascript
复制
pip check

02

模型保存为pickle

1 pickle是什么?

pickle是Python中序列化对象的标准方式。

我们可以使用pickle操作来序列化机器学习模型,并将序列化的格式保存到一个文件中。以后,我们可以加载这个文件来反序列化模型,用它来做新的预测。

2 代码演示

我们基于一份公开的糖尿病发病数据集,构建逻辑回归模型,并保存模型,后来加载模型,用于新样本的预测。

代码语言:javascript
复制
import os
import pandas as pd

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

import pickle
import warnings
warnings.filterwarnings('ignore')

url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = pd.read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
y = array[:,8]


test_size = 0.33
seed = 7
# 数据计划分
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=test_size, random_state=seed)

# 拟合模型
model = LogisticRegression()
model.fit(X_train, Y_train)

# 模型保存
model_folder = './model/'
if not os.path.exists(model_folder):
    os.makedirs(model_folder)

filename = model_folder + 'LR_2022_week1_finalized_model.sav'
pickle.dump(model, open(filename, 'wb'))

# 加载模型
loaded_model = pickle.load(open(filename, 'rb'))

# 模型的效果分析
pred_result = loaded_model.predict(X_test)

model_result = accuracy_score(y_test, pred_result)

print(round(model_result, 2))

运行结果

代码语言:javascript
复制
0.79

03

pdf与docx互相转换操作

1 简介

pdf和docx是两种常用的格式文件,如何用Python实现彼此的转换?我们可以使用pdf2docxdocx2pdf两个包来做这个有趣的事情。

2 安装库

执行如下命令

代码语言:javascript
复制
pip install pdf2docx
pip install docx2pdf

若是已经安装,请忽略

3 pdf转换为docx示范

pdf文件全部页面转换为docx

方法一:

代码语言:javascript
复制
# 方法1
from pdf2docx import Converter

pdf_file = './file/sample.pdf'
docx_file = './file/sample.docx'

cv = Converter(pdf_file)
cv.convert(docx_file)
cv.close()

方法二:

代码语言:javascript
复制
# 方法2
from pdf2docx import parse

pdf_file = './file/sample.pdf'
docx_file = './file/sample2.docx'

parse(pdf_file, docx_file)

pdf文件部分页面转换为docx

代码语言:javascript
复制
# 指定单独PDF页面转化为docx
from pdf2docx import Converter

pdf_file = './file/sample.pdf'
docx_file = './file/sample2.docx'

pages_list = [0]

cv = Converter(pdf_file)
cv.convert(docx_file, pages=pages_list)
cv.close()

4 docx转换为pdf示范

docx文件转换为pdf

代码语言:javascript
复制
from docx2pdf import convert

docx_file = './file/input.docx'
pdf_file = './file/output.pdf'

convert(docx_file, pdf_file)
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据科学与人工智能 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 01
    • pip工具使用知识
      • 1 pip是什么?
      • 2 pip使用知识
  • 02
    • 模型保存为pickle
      • 1 pickle是什么?
      • 2 代码演示
  • 03
    • pdf与docx互相转换操作
      • 1 简介
      • 2 安装库
      • 3 pdf转换为docx示范
      • 4 docx转换为pdf示范
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档