python学习1

大家好,这里是七七,今天开始又新开一个专栏,Python学习。这次思考了些许,准备用例子来学习,而不是只通过一大堆道理和书本来学习了。啊对,这次是从0开始学习,因此大佬不用看本文了,小白一起来看看吧。

话不多说,直接开始


目录

一、pandas库

二、matplotlib.pylot库 

三、代码举例学习

代码1 

 代码2

问题:如果只有xlsx文件,怎么改代码呢?

代码3

​编辑 代码4


一、pandas库

Pandas 是一个数据处理和分析的开源库,用于处理和操作结构化数据。它提供了高性能、易于使用的数据结构,如 DataFrame,用于处理表格化数据。通过 Pandas,你可以轻松地读取和写入各种数据格式(如 CSV、Excel、SQL 数据库等),清洗和转换数据,执行数据计算和聚合操作,以及进行数据可视化。Pandas 还提供了强大的数据索引和选择功能,可以快速高效地操作大型数据集。因此,Pandas 是数据科学和数据分析工作流中常用的工具之一。

二、matplotlib.pylot库 

`matplotlib.pyplot` 是一个用于数据可视化的 Python 库,它是 matplotlib 的一个子模块。matplotlib 是一个功能强大的绘图库,提供了各种绘图选项和自定义功能,用于创建各种类型的静态、动态和交互式图表。

`matplotlib.pyplot` 提供了一系列简单的绘图函数,使得绘图变得更加容易和直观。你可以使用 `pyplot` 创建折线图、散点图、柱状图、饼图、直方图等各种常见的图表类型。它还支持对图表进行自定义,可以调整颜色、标签、标题、轴标注等属性,以及添加图例、注释等元素。此外,`pyplot` 还可以与 NumPy 和 Pandas 等库进行无缝集成,便于在图表中展示和处理数据。

总而言之,`matplotlib.pyplot` 是一个用于绘制各类图表的工具,可以帮助你更好地理解和展示数据。它在数据可视化和数据分析中广泛使用,是数据科学领域中重要的工具之一。

三、代码举例学习

代码1 

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=[u'simHei']
plt.rcParams['axes.unicode_minus']=False

第一行:

引入matplotlib.pyplot库,并起别名叫plt。

第二行:

使用了 rcParams 对象来设置 matplotlib 库中的默认字体。其中 rcParams 是一个字典对象,用于存储和管理 matplotlib 库的默认参数。这些参数可以控制绘图的外观、属性和行为等。在这里,font.sans-serif 是其中一个参数,表示无衬线字体的名称或列表。它用于设置图表中的默认字体,如果找不到指定的字体,matplotlib 将使用备用字体进行替代。

具体来说,plt.rcParams['font.sans-serif']=[u'simHei'] 应该是将默认的 sans-serif 字体名称设置为 “SimHei”,而 “SimHei” 是一种常用的中文无衬线字体,具有良好的可读性和展示效果。这样,当你在图表中添加中文标签和文字时,matplotlib 将使用 “SimHei” 作为默认字体,以确保标签和文字能够正常显示。这个设置适用于绘制中文图表的场景,如果不需要使用中文,可以选择其他的 sans-serif 字体或者使用默认设置即可。

第三行:

plt.rcParams['axes.unicode_minus']=False 是在 matplotlib 中设置坐标轴上的负号字符编码使用 Unicode 编码,以免出现显示为方块或其他乱码的情况。

负号字符通常用于表示负数或表示范围。在使用 matplotlib 时,如果不将负号转换成 Unicode 编码,则有可能会出现显示异常的情况,例如负号显示为方块或其他符号。这是因为 matplotlib 默认使用的字体不支持负号字符的显示,因此需要手动设置负号的编码格式为 Unicode。

通过将 plt.rcParams['axes.unicode_minus'] 属性设置为 False,可以让 matplotlib 使用 Unicode 编码显示负号字符,从而避免出现负号显示异常的问题。这种设置可以用于绘制包含负数坐标轴或包含负数范围的图表,例如绘制股票数据的 K 线图等。

 代码2

csv_file='data/附件 1.csv'
df_1=pd.read_csv(csv_file)

xlsx_file = 'data/附件3.xlsx'
df = pd.read_excel(xlsx_file)

这段代码使用了 pandas 库中的 `read_csv()` 函数来读取一个 CSV 文件,并将读取的数据存储在一个 pandas DataFrame 对象中。

具体解释如下:
1. `csv_file='data/附件 1.csv'`:这行代码定义了一个名为 `csv_file` 的变量,并将其赋值为一个包含文件路径的字符串。这里指定的文件路径是 'data/附件 1.csv',其中 'data' 是文件所在的文件夹,'附件 1.csv' 是文件的名称。
2. `df_1=pd.read_csv(csv_file)`:这行代码使用 `pd.read_csv()` 函数读取了指定路径的 CSV 文件,并将读取的数据存储在一个名为 `df_1` 的 pandas DataFrame 对象中。`pd` 是 pandas 的别名,它是导入 pandas 库时常用的别名。通过调用 `read_csv()` 函数并传递文件路径作为参数,可以读取 CSV 文件的内容并将其转换为一个 DataFrame 对象。

经过以上步骤,原始的 CSV 文件的数据就被读取并存储在了 `df_1` 这个 DataFrame 对象中,可以通过该对象进行各种数据分析、处理和可视化操作。

问题:如果只有xlsx文件,怎么改代码呢?

xlsx_file = 'data/附件1.xlsx'
df_1 = pd.read_excel(xlsx_file)

在Python中创建一个data文件夹,把附件1.xlsx放入这个文件夹中,改为这段代码就可以了。

代码3

df['日期']=pd.to_datetime(df['日期'])
df['月份']=df['日期'].dt.month
  1. pd.to_datetime(df['日期']) 将 DataFrame 中 “日期” 列的数据类型从字符串转换为日期时间类型,以便后续处理和分析。

  2. df['日期'].dt.month 将 “日期” 列中的日期时间格式数据的月份部分提取出来,并将提取的结果存储在一个新的“月份”列中。这里使用 dt.month 方法可以方便地实现将月份信息提取出来,返回的是一个由月份部分组成的 Series 对象。

输出如下:

 代码4

mapping_dict=df_1.set_index('单品编码')['分类名称'].to_dict()
df['品类']=df['单品编号'].map(mapping_dict)

使用 set_index() 函数将 DataFrame df_1 的 “单品编码” 列设置为索引,然后使用 to_dict() 函数将索引列 “单品编码” 作为键,“分类名称” 列作为值,创建了一个字典对象 mapping_dict

接下来,df['单品编号'].map(mapping_dict) 将 DataFrame df 的 “单品编号” 列的值作为键去查找 mapping_dict 字典中对应的值,并将查找结果赋值给 “品类” 列。

这样做的目的是通过 mapping_dict 字典对 “单品编号” 列的值进行映射,将对应的 “分类名称” 值赋给 “品类” 列。

这是输出结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/247324.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Lidar】基于Python格网法计算点云体积(eg.树木体积)

这两天一直不在状态,不是特别想分享文章,所以也没怎么更新。但是代码放在文件里始终不是它的归宿,只有被不断使用它才能进步,才能诠释它的意义。所以今天抽空给大家分享一下如何基于Python利用格网法计算点云的体积,我…

Spring+SpringMVC+SpringBoot

Spring bean bean基础配置 bean别名配置 注意事项: 获取bean无论是通过id还是name获取。如果无法获取到,将抛出异常NoSuchBeanDefinitionException bean的作用范围配置 适合交给容器进行管理的bean 表现层对象、业务层对象、数据层对象、工具对象 不…

jmeter调试错误全集(入门必备)

一、前言 在使用jmeter做接口测试的过程中大家是不是经常会遇到很多问题,但是无从下手,不知道从哪里开始找起,对于初学者而言这是一个非常头痛的事情。这里结合笔者的经验,总结出以下方法。 二、通过查看运行日志调试问题 写好脚…

UE4/UE5 日志插件(基于spdlog)

1 解决问题 对于高频日志序列化到本地的需求,spdlog肯定完美满足。 源码地址:https://github.com/gabime/spdlog 博主下载的版本为 spdlog-1.12.0,各位大佬可以根绝自己爱好选择。 2 过程介绍 大概目录: SpdlogLibC目录下是对…

WGAN 优势小结

我在上一篇博文为什么 GAN 不好训练中,分析了原始 GAN 难以训练的原因,本篇博文将分析下 WGAN 的优势。 1. Wasserstein 距离 W 是指 Wasserstein,Wasserstein 距离又叫Earth-Mover(EM)距离。Wasserstein距离相比KL散…

2024年企业和个人都在备考的权威性 AI人工智能工程师培训类证书

给大家推荐个2024年企业和个人都在备考的权威性 AI人工智能工程师培训类证书,看能否帮到大家的: 由工业和信息化部电子工业标准化研究院颁发的关于以下两类证书: 计算机自然语言及语音处理设计开发工程师(中级) 计算机…

软件设计师——信息安全(二)

📑前言 本文主要是【信息安全】——软件设计师——信息安全的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 &#x1f304…

【无数次任意地址读+栈溢出】ImaginaryCTF2023 -- opportunity

前言 本题不难&#xff0c;但感觉笔者的做法挺有意思&#xff08;嘿嘿&#xff0c;自夸啦&#xff09;&#xff0c;利用到了最近学到的 ret2hbp。 漏洞分析 保护&#xff1a;smap 等都开了&#xff0c;标配啦 >_< 漏洞是直给的&#xff1a;这里存在一个 256 字节的任…

阅读代码的记录

1-utils_metrics.py用在train.py中做指标衡量&#xff0c;现在想在推理&#xff08;predict.py&#xff09;的时候衡量一下指标 2-调研眼睛部位的单独分割。 https://blog.csdn.net/qq_40234695/article/details/88633094 衡量图像语义分割准确率主要有三种方法&#xff1a; …

高级C#技术(二)

前言 本章为高级C#技术的第二节也是最后一节。前一节在下面这个链接 高级C#技术https://blog.csdn.net/qq_71897293/article/details/134930989?spm1001.2014.3001.5501 匿名类型 匿名类型如其名&#xff0c;匿名的没有指定变量的具体类型。 举个例子&#xff1a; 1 创建…

YOLOv8改进《目标对象计数》多任务实验:深度集成版来了!支持自定义数据集训练自定义模型

💡该教程为改进YOLO专栏,属于《芒果书》📚系列,包含大量的原创改进方式🚀 💡🚀🚀🚀内含改进源代码 按步骤操作运行改进后的代码即可💡更方便的统计更多实验数据,方便写作 YOLOv8改进《目标对象计数》多任务实验:深度集成版来了!支持自定义数据集训练自定…

匿名内部类与Lambda表达式

深入了解Java的匿名内部类 Java作为一种面向对象的编程语言&#xff0c;提供了许多灵活的特性&#xff0c;其中之一就是匿名内部类。匿名内部类是一种没有名字的局部内部类&#xff0c;通常用于创建只需在一个地方使用的类的实例。 什么是匿名内部类&#xff1f; 匿名内部类是…

学习Java第70天,过滤器Filter简介

过滤器概述 Filter,即过滤器,是JAVAEE技术规范之一,作用目标资源的请求进行过滤的一套技术规范,是Java Web项目中最为实用的技术之一 Filter接口定义了过滤器的开发规范,所有的过滤器都要实现该接口 Filter的工作位置是项目中所有目标资源之前,容器在创建HttpServletRequest和…

Unity2023.3(Unity6)版本开始将可以发布WebGPU

翻译一段官网上的话&#xff1a; 利用Unity 2023.3(正式发布时应该称为Unity6)中最新的WebGPU图形API集成&#xff0c;尝试最大限度的提升您的网络游戏的真实感。 通过与谷歌的战略合作&#xff0c;Unity实时3D平台的强大的图形功能现在为图形丰富的网络游戏进行微调&#xff0…

知识库SEO:提升网站内容质量与搜索引擎排名的策略

随着搜索引擎算法的不断更新和优化&#xff0c;单纯依靠关键词堆砌和外部链接的时代已经过去。现在的SEO&#xff08;搜索引擎优化&#xff09;已经转向了以提供高质量、有价值内容为核心的阶段。知识库SEO便是这个新阶段的重要策略之一。 | 一、知识库SEO的概念与意义 1.定义…

python 新手学习 - 简单实用的 Python 周期任务调度工具

如果你想周期性地执行某个 Python 脚本&#xff0c;最出名的选择应该是 Crontab 脚本&#xff0c;但是 Crontab 具有以下缺点&#xff1a; 1.不方便执行秒级任务。 2.当需要执行的定时任务有上百个的时候&#xff0c;Crontab 的管理就会特别不方便。 还有一个选择是 Celery&a…

text-align-last: justify 使用方法,对齐字段交互

<html> <style>.label {display: inline-block;width: 100px;text-align-last: justify;} </style><body><div class"l-content"><div><div class"label">身份证&#xff1a;</div><div class"la…

DDA 算法

CAD 算法是计算机辅助设计的算法&#xff0c;几何算法是解决几何问题的算法 CAD 算法是指在计算机辅助设计软件中使用的算法&#xff0c;用于实现各种设计和绘图功能&#xff0c;CAD 广泛应用于建筑、机械、电子等领域&#xff0c;可以大大提高设计效率和精度 绘图算法是 CAD…

RLC防孤岛负载测试:电力系统安全运行的重要保障

在电力系统中&#xff0c;孤岛效应是一个严重的问题&#xff0c;它可能导致电力系统的不稳定甚至崩溃。为了确保电力系统的安全运行&#xff0c;必须进行RLC防孤岛负载测试。RLC防孤岛负载测试是一种模拟电网故障后&#xff0c;对电力系统进行检测的方法&#xff0c;主要用于检…

性格内向,如何找到适合自己的职业

很多人都会觉得性格内向是一件坏事&#xff0c;这会让自己在竞争激烈的生活中得不到好处&#xff0c;但其实在心理学上看来&#xff0c;每一种性格都有自己的优缺点&#xff0c;如果片面地用好坏去评定&#xff0c;就无法发挥性格的优势&#xff0c;也很难利用它们为自己所用。…