iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python笔记:用Python实现Excel中的部分操作
  • 706
分享到

Python笔记:用Python实现Excel中的部分操作

Python笔记:用Python实现Excel中的部分操作 2021-05-15 20:05:34 706人浏览 无得

Python 官方文档:入门教程 => 点击学习

摘要

        很多人都知道,excel做数据处理和分析特别方面、好用。但是我想说,用python来处理、分析数据会更加好用,如果你会写Python脚本的话。其实,Excel中的很多操作,在Python中也是可以实现的。毕竟工具只是个工具,

Python笔记:用Python实现Excel中的部分操作

        很多人都知道,excel做数据处理和分析特别方面、好用。但是我想说,用python来处理、分析数据会更加好用,如果你会写Python脚本的话。其实,Excel中的很多操作,在Python中也是可以实现的。毕竟工具只是个工具,但是底层实现的原理是异曲同工的。比如:

       

1. Excel是直接双击打开工作簿,或者从各种系统把数据导出保存到Excel。用Python获取Excel的内容,只需3行脚本:


# 导入pandas库
import pandas as pd

# 让每一行的数据都展示出来
pd.options.display.max_rows = 9999

# 让每一列的数据都展示出来
pd.options.display.max_columns = 9999

# 加载数据
df = pd.read_excel(r"C:UsersQDMDesktop500.xlsx")

# 打印输出
df

运行结果:

 

2. Excel中用rand等函数来构造随机矩阵,Python中用numpy工具包:


import numpy as np
# 构造有个5行3列的随机矩阵
data = pd.DataFrame(np.random.rand(5,3))

# 给构建的 DataFrame 定义各个字段的名称
data = pd.DataFrame(np.random.rand(5,3),columns = ["昨天","今天","明天"])

data

运行结果:

 

3. 保存输出结果到Excel中:

PS:Excel中是按 Ctrl+S(保存)或 F12 (另存为)


# 把数据输出保存到Excel中
data.to_excel(r"C:UsersQDMDesktop随机.xlsx")

#  sheet_name 自定义所输出的工作表名称
data.to_excel(r"C:UsersQDMDesktop随机.xlsx",sheet_name = "随机矩阵")

# index = False 去掉Python中自然生成的索引
data.to_excel(r"C:UsersQDMDesktop随机.xlsx",sheet_name = "随机矩阵",index = False)

运行结果:

 

4. 筛选:

① 筛选出排名前10的记录


# 筛选出排名前10的记录
df[df["排名"] < 11]

运行结果:

 

② 筛选出属于中国的企业


# 筛选出属于中国的企业
df[df["国家"] == "中国"]

运行结果:

 

③ 筛选出排名分别是第2和第6的企业


# 筛选出排名分别是第2和第6的企业,注意要有小括号
df[(df["排名"] == 2) | (df["排名"] == 6)]

运行结果:

 

5. 插入一列新列,并判断是否已经完成销售任务:

另外加载一份数据:


# 加载数据
import pandas as pd
df1 = pd.read_excel(r"C:UsersQDMDesktopcar.xlsx")
df1

运行结果:

进行插入操作:


# 设定区间段
bins = [0, 299, 599, max(df1["销量"])]

# 给不同区间段添加一个映射
group_names = ["不达标", "达标", "优秀"]

# 在后面新增一个辅助列判断销量是否已经完成任务
df1["是否达标"] = pd.cut(df1["销量"], bins, labels = group_names)

# 预览结果
df1

运行结果:

 

6.  del df["列名"]  删除列

数据源 df2


# 加载数据
import pandas as pd
df2 = pd.read_excel(r"C:UsersQDMDesktopcar.xlsx")
df2

删除操作


# 删除列
del df2["销量"]
df2

 

7. .sort_values() 进行数值排序


# 要排序前的数据源
import pandas as pd
df3 = pd.read_excel(r"C:UsersQDMDesktopcar.xlsx")
df3

排序操作:


# 用 .sort_values() 排序,ascending = True 表升序,ascending=False 排降序
df3.sort_values(by = "销量", ascending = True)

# inplace=True 表示改动并替换原数据表
df3.sort_values(by = "销量", ascending = True, inplace=True)

运行结果:

 

8. 处理缺失值

数据源:


# 要排序前的数据源
import pandas as pd
df4 = pd.read_excel(r"C:UsersQDMDesktopcar.xlsx",sheet_name = "car")
df4

① 全局概览是否存在缺失值


# 全局概览是否存在缺失值
df4.info()

② 查看缺失值具体在什么位置


# 查看缺失值具体在什么位置
df4.isnull()

③ 计算每列中缺失值的个数


# 计算每列中缺失值的个数
df4.isnull().sum()

④ 用临近的值来填充缺失值


# 用 .fillna(axis = 0, method = "ffill") 来横向/纵向用缺失值前面的值替换缺失值
# method 的参数有 ffill 和 bfill 等
df4 = df4.fillna(axis = 0, method = "ffill")
df4

⑤ 用空值来填充缺失值


# 用空值来替换
df4.fillna("")

⑥ 用 0 来填充


# 用 0 来填充
df4.fillna(0)

⑦ 用 均值 来填充


# 用均值来填充
df4.fillna(df4.mean())

⑧ 删除缺失值


# 删除缺失值
df4.dropna()

 

 

 

 

--结束END--

本文标题: Python笔记:用Python实现Excel中的部分操作

本文链接: https://www.lsjlt.com/news/6880.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作