相关文章:

Python自动化办公--Pandas玩转Excel【一】

Python自动化办公--Pandas玩转Excel数据分析【二】


python处理Excel实现自动化办公教学(含实战)【一】

python处理Excel实现自动化办公教学(含实战)【二】

python处理Excel实现自动化办公教学(数据筛选、公式操作、单元格拆分合并、冻结窗口、图表绘制等)【三】


python入门之后须掌握的知识点(模块化编程、时间模块)【一】

python入门之后须掌握的知识点(excel文件处理+邮件发送+实战:批量化发工资条)【二】


pandas玩转excel码源.zip-数据挖掘文档类资源-CSDN下载

1.线性回归,简单的数据预测

import pandas as pd
import matplotlib.pyplot as plt
from scipy.stats import linregress sales = pd.read_excel('Sales.xlsx', dtype={'Month': str, 'Revenue': float})
print(sales) slope, intercept, r_value, p_value, std_err = linregress(
sales.index, sales.Revenue) # 斜率 截距 R P 方差 sales.index, sales.Revenue分别为xy轴
exp = sales.index * slope + intercept #期望方程 plt.scatter(sales.index, sales.Revenue)
plt.plot(sales.index, exp, color='red')
plt.title(f"y={slope}*x+{intercept}")
plt.xticks(sales.index, sales.Month, rotation=90)
plt.show()

预测的话就直接输入x代入方程,这是deme仅供参考,更多的可以采用机器学习的一些算法进行求解。

数据挖掘---汽车车交易价格预测[一](测评指标;EDA)_汀、的博客-CSDN博客题目出自阿里天池赛题链接:https://tianchi.aliyun.com/competition/entrance/231784/introduction1.简介:比赛要求参赛选手根据给定的数据集,建立模型,二手汽车的交易价格。来自 Ebay Kleinanzeigen 报废的二手车,数量超过 370,000,包含 20 列变量信息,为了保证 比赛的公平性,将会从中抽取 10 万条作为训练集,5 万条作为测试集 A,5 万条作为测试集 B。同时会对名称、车辆类型、变速箱、model、燃油类型、https://blog.csdn.net/sinat_39620217/article/details/120144775

2.条件格式【数据背景色设置,数据条、渐变色等】

Seabornseaborn是python中的一个可视化库,是对matplotlib进行二次封装而成,既然是基于matplotlib,所以seaborn的很多图表接口和参数设置与其很是接近)

导入库 import seaborn as sns

seaborn风格多变的另一大特色就是支持个性化的颜色配置。颜色配置的方法有多种,常用方法包括以下两个:
color_palette,基于RGB原理设置颜色的接口,可接收一个调色板对象作为参数,同时可以设置颜色数量;hls_palette,基于Hue(色相)、Luminance(亮度)、Saturation(饱和度)原理设置颜色的接口,除了颜色数量参数外,另外3个重要参数即是hls

import pandas as pd
import seaborn as sns def low_score_red(s):
color="red" if s<60 else "black"
return f'color:{color}' def highest_score_green(col):
return ["background-color:green" if s==col.max()
else 'background-color:white' for s in col] students = pd.read_excel('Students5.xlsx', index_col='ID')
students.style.applymap(low_score_red,subset=['Test_1', 'Test_2', 'Test_3'])
#subset选择数据区域 students.style.applymap(low_score_red,subset=['Test_1', 'Test_2',
'Test_3']).apply(highest_score_green,subset=['Test_1', 'Test_2', 'Test_3'])

1.低于60分标红  2.最高分标绿(背景色)其余背景色为白色

渐变色设置:

import pandas as pd
import seaborn as sns color_map=sns.light_palette('green', as_cmap=True)#调色板
students = pd.read_excel('Students5.xlsx', index_col='ID')
students.style.background_gradient(color_map,subset=['Test_1', 'Test_2', 'Test_3']) #subset选择数据区域

数据条设置

import pandas as pd

students = pd.read_excel('Students5.xlsx', index_col='ID')
students.style.bar(color="green",subset=['Test_1', 'Test_2', 'Test_3']) #subset选择数据区域

3.行操作集锦【插入、追加、删除、更改】

import pandas as pd

page_001 = pd.read_excel('Students6.xlsx', sheet_name='Page_001')
page_002 = pd.read_excel('Students6.xlsx', sheet_name='Page_002') # 追加已有
students = page_001.append(page_002).reset_index(drop=True) # 重制index并删除原来的
students = pd.concat([page_001,page_002]).reset_index(drop=True)
# 追加新建
stu = pd.Series({'ID': 41, 'Name': 'Abel', 'Score': 90})
students = students.append(stu, ignore_index=True) # ignore_index # 删除(可切片)
students = students.drop(index=[39, 40]) students = students.drop(index=students[0:10].index, inplace=True) # 切片删除 # 插入
stu = pd.Series({'ID': 100, 'Name': 'Bailey', 'Score': 100})
part1 = students[:21] # .iloc[] is the same
part2 = students[21:]
students = part1.append(stu, ignore_index=True).append(
part2).reset_index(drop=True) # 更改两种方法直接改或者替换
students.at[39, "Name"] = "aaaa"
students.at[39, "Score"] = "120" stu = pd.Series({'ID': 101, 'Name': 'Danni', 'Score': 101})
students.iloc[39] = stu # 设置空值
for i in range(5, 15):
students['Name'].at[i] = '' # 去掉空值
missing = students.loc[students['Name'] == ''] # loc索引
students.drop(missing.index, inplace=True) print(students)

loc和at的区别:

loc可以取多个值,at只能取一个格子里面的值,

.loc[[start:end],[start:end]]和.iloc[[start:end],[start:end]]
区别在于.loc使用的是行列标签(定义的具体行名和列名),而.iloc使用的是行列整数位置(从零开始)

4.列操作集锦【插入、追加、删除、更改】

数据源参考3中


import pandas as pd
import numpy as np page_001 = pd.read_excel('Students5.xlsx', sheet_name='Page_001')
page_002 = pd.read_excel('Students5.xlsx', sheet_name='Page_002') # 合并列
# students = pd.concat([page_001,page_002]).reset_index(drop=True)
students = pd.concat([page_001, page_002], axis=1) # 追加列
students['Age'] = 25
students['Age'] = np.repeat(25, len(students)) # 删除列
students.drop(columns=['Score', 'Age'], inplace=True) # 插入列
students.insert(1, column='Foo', value=np.repeat('foo', len(students))) # 改列名
students.rename(columns={'Foo': 'FOO', 'Name': 'NAME'}, inplace=True) # 设置空值
students['ID'] = students['ID'].astype(float)
for i in range(5, 15):
students['ID'].at[i] = np.nan # 去掉空值
students.dropna(inplace=True) # 横向读取每一行删除空值 print(students)

5.链接SQL.Server数据库

这里仅以链接SQL Server为例

关于mysql相关教学参考:

https://blog.csdn.net/sinat_39620217/category_11377602.htmlhttps://blog.csdn.net/sinat_39620217/category_11377602.html连接数据库:pyodbc

python pyodbc使用方法_Jack2013tong的博客-CSDN博客_pyodbc

建立与数据库的连接:sqlalchemy

SQLAlchemy 是 Python 著名的 ORM 工具包。通过 ORM,开发者可以用面向对象的方式来操作数据库,不再需要编写 SQL 语句。本篇不解释为什么要使用 ORM,主要讲解 SQLAlchemy 的用法。SQLAlchemy 支持多种数据库,除 sqlite 外,其它数据库需要安装第三方驱动

import pyodbc
import sqlalchemy
import pandas as pd connection = pyodbc.connect('DRIVER={SQL Server}; SERVER=(local); DATABASE=AdventureWorks;USER=sa;PASSWORD=123456')
engine = sqlalchemy.create_engine('mssql+pyodbc://sa:123456@(local)/AdventureWorks?driver=SQL+Server') query = 'SELECT FirstName, LastName FROM Person.Person'
df1 = pd.read_sql_query(query, connection)
df2 = pd.read_sql_query(query, engine) pd.options.display.max_columns = 999
print(df1.head())
print(df2.head())

6.稍微复杂计算列【以计算长方形外接圆为例】


import pandas as pd
import numpy as np def get_circumcircle_area(l, h):
r = np.sqrt(l ** 2 + h ** 2) / 2
return r ** 2 * np.pi def wrapper(row):
return get_circumcircle_area(row['Length'], row['Height']) rects = pd.read_excel('Rectangles.xlsx', index_col='ID')
rects['Circumcircle Area'] = rects.apply(wrapper, axis=1)
print(rects)

import pandas as pd
import numpy as np def get_circumcircle_area(l, h):
r = np.sqrt(l ** 2 + h ** 2) / 2
return r ** 2 * np.pi # def wrapper(row):
# return get_circumcircle_area(row['Length'], row['Height']) rects = pd.read_excel('Rectangles.xlsx', index_col='ID')
rects['Circumcircle Area'] = rects.apply(lambda row:get_circumcircle_area(row['Length'], row['Height']), axis=1)
print(rects)
    Length  Height  Circumcircle Area
ID
1 8 8 100.530965
2 9 4 76.183622
3 5 7 58.119464
4 6 4 40.840704
5 8 8 100.530965
6 7 5 58.119464
7 11 2 98.174770
8 13 4 145.298660
9 6 9 91.891585
10 11 5 114.668132
11 6 9 91.891585
12 10 8 128.805299
13 10 5 98.174770
14 9 9 127.234502
15 13 3 139.800873
16 8 8 100.530965
17 8 6 78.539816
18 7 7 76.969020
19 12 5 132.732290
20 5 4 32.201325

Python自动化办公--Pandas玩转Excel数据分析【三】的更多相关文章

  1. Python数据分析:pandas玩转Excel(三)

    将对象写入Excel工作表. 要将单个对象写入 Excel .xlsx 文件,只需指定目标文件名即可.要写入多个工作表,必须创建具有目标文件名的ExcelWriter对象,并在文件中指定要写入的工作表 ...

  2. Python自动化办公知识点整理汇总

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...

  3. 20210105 - python自动化办公简介

    新的一年开始了, 计划每周至少更新三篇博客. 人生苦短,如果不做改变,人生很快会过去!2021年寻求改变,加油! python自动化办公: 1.相关工具与环境的安装概要: 需要用到python(一种开 ...

  4. Python自动化办公:将文本文档内容批量分类导入Excel表格

    序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 它来了,它又来了. 本文实现用Python将文本文件自动保存到Excel表格里面去. 需求 将锦江区.t ...

  5. Python数据分析:pandas玩转Excel (一)

    目录 1 pandas简介 2 导入 3 使用 4 读取.写入 1 pandas简介 1.Pandas是什么? Pandas是一个强大的分析结构化数据的工具集: 它的使用基础是Numpy(提供高性能的 ...

  6. Python数据分析:pandas玩转Excel (二)

    1 对Excel文件的操作 方法一: 使用xlrd库或者xlwt库进行对excel表格的操作读与写: 方法二: pandas库同样支持excel的读写操作:且更加简便. 2 pd.read_excel ...

  7. Python自动化办公:27行代码实现将多个Excel表格内容批量汇总合并到一个表格

    序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去.还好我会Python,分分钟 ...

  8. Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

  9. 《Python编程快速上手 —让繁琐工作自动化》|百度网盘免费下载|Python自动化办公

    Python编程快速上手—让繁琐工作自动化 提取码:u8vj 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过 P ...

  10. Python自动化办公第三方库xlwt

    Python向excel表格写入内容,首先安装第三方库: pip3 install xlwt 代码实例(结合xlrd): #!usr/bin/env python3 #!-*-coding=utf-8 ...

随机推荐

  1. 机器学习的线性代数(Python 版)

    线性代数是数学的分支学科,涉及矢量.矩阵和线性变换.它是机器学习的重要基础,从描述算法操作的符号到代码中算法的实现,都属于该学科的研究范围. 虽然线性代数是机器学习领域不可或缺的一部分,但二者的紧密关 ...

  2. SpringCloud Alibaba技术栈(二)Nacos服务治理

    源码-笔记:Code for Github 第二章 Nacos服务治理 1. 模块设计与实现 ①首先创建maven项目,此项目作为父工程.把src文件夹删掉,修改pom文件,添加依赖版本控制,控制子模 ...

  3. Codeforce:1300B. Assigning to Classes (math)

    解题思路 题目说的意思是,给一个2n个数的数组,注意n为奇数,将这个数组平均分为2份,假设为c1和c2. c1和c2是奇数个元素的数组,比如数组[1,2,3],那么中位数就是2. 那么如何求得中位数差 ...

  4. 六、docker数据卷

    系列导航 一.docker入门(概念) 二.docker的安装和镜像管理 三.docker容器的常用命令 四.容器的网络访问 五.容器端口转发 六.docker数据卷 七.手动制作docker镜像 八 ...

  5. freeswitch媒体协商的三种配置方案

    概述 在企业级VOIP通信中,语音质量是重要的关注点,而语音质量的好坏和媒体编解码有重要的关系. freeswitch作为一款免费开源的软交换平台,支持多种不同的编解码格式,具体详情本文不多描述. 而 ...

  6. 第七届蓝桥杯大赛个人赛省赛(软件类)B组

    3.凑算式     B      DEFA + --- + ------- = 10     C      GHI     (如果显示有问题,可以参见[图1.jpg])   这个算式中A~I代表1~9 ...

  7. df -h与df -i的区别

    一. df命令详解: linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息 -a 全部文件系统列表 -h ...

  8. zookeeper 特点、使用场景及安装,配置文件解析

    本文为博主原创,未经允许不得转载: 1. Zookeeper 特点: ZooKeeper是用于分布式应用程序的协调服务.它公开了一组简单的API,分布式应用程序可以基于这些API用于同步,节点状态.配 ...

  9. .NET静态代码织入——肉夹馍(Rougamo)发布2.2

    肉夹馍(https://github.com/inversionhourglass/Rougamo)通过静态代码织入方式实现AOP的组件,其主要特点是在编译时完成AOP代码织入,相比动态代理可以减少应 ...

  10. text, data and bss: Code and Data Size Explained

    [来源]