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

Python笔记:用Python实现Excel中的部分操作很多人都知道,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

代码100分

运行结果:

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

 

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

代码100分
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

运行结果:

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

 

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)

运行结果:

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

 

4. 筛选:

① 筛选出排名前10的记录

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

运行结果:

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

 

② 筛选出属于中国的企业

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

运行结果:

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

 

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

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

运行结果:

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

 

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

另外加载一份数据:

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

运行结果:

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

进行插入操作:

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

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

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

# 预览结果
df1

运行结果:

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

 

6.  del df[“列名”]  删除列

数据源 df2

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

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

删除操作

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

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

 

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

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

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

排序操作:

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

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

运行结果:

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

 

8. 处理缺失值

数据源:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

⑤ 用空值来填充缺失值

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

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

⑥ 用 0 来填充

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

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

⑦ 用 均值 来填充

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

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

⑧ 删除缺失值

# 删除缺失值
df4.dropna()

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

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7675.html

(0)
上一篇 2023-03-16
下一篇 2023-03-16

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注