当前位置: 首页 > news >正文

山西临汾建设局网站深圳团购网站设计

山西临汾建设局网站,深圳团购网站设计,wordpress不显示引用图片,wordpress配置发送邮件数据处理与可视化:pandas 和 matplotlib 初体验(9/10) 介绍 在如今的数据驱动时代,掌握数据处理与可视化是每个开发者和数据科学家不可或缺的技能。Python 拥有强大的数据处理库 pandas 和数据可视化库 matplotlib,它…

数据处理与可视化:pandas 和 matplotlib 初体验(9/10)

介绍

在如今的数据驱动时代,掌握数据处理与可视化是每个开发者和数据科学家不可或缺的技能。Python 拥有强大的数据处理库 pandas 和数据可视化库 matplotlib,它们可以帮助我们轻松地处理复杂的数据,并以直观的方式展示结果。在本篇文章中,我们将深入学习如何使用 pandasmatplotlib 进行数据处理和可视化,从而更好地理解和分析数据。

pandas 库简介

pandas 是一个用于数据处理和分析的强大库,提供了数据结构 SeriesDataFrame,它们可以用来处理各种表格数据和时间序列数据。

创建 Series 和 DataFrame

  • Series 是一维的、带有索引的数组。

  • DataFrame 是二维的、类似于电子表格的结构,包含行和列。

import pandas as pd# 创建一个 Series
data = [10, 20, 30, 40, 50]
series = pd.Series(data, index=["a", "b", "c", "d", "e"])
print("Series:\n", series)# 创建一个 DataFrame
data = {"姓名": ["Alice", "Bob", "Charlie"],"年龄": [25, 30, 35],"成绩": [88, 92, 79]
}
df = pd.DataFrame(data)
print("DataFrame:\n", df)

输出:

Series:
a    10
b    20
c    30
d    40
e    50
dtype: int64DataFrame:姓名  年龄  成绩
0    Alice  25  88
1      Bob  30  92
2  Charlie  35  79

读取和写入数据

pandas 可以读取和写入多种文件格式,例如 CSV、Excel、SQL 数据库等。

读取 CSV 文件
df = pd.read_csv("data.csv")
print("CSV 文件内容:\n", df)
写入 CSV 文件
df.to_csv("output.csv", index=False)
方法描述示例
pd.read_csv()读取 CSV 文件df = pd.read_csv("data.csv")
df.to_csv()将 DataFrame 写入 CSV 文件df.to_csv("output.csv")
pd.read_excel()读取 Excel 文件df = pd.read_excel("data.xlsx")
df.to_excel()将 DataFrame 写入 Excel 文件df.to_excel("output.xlsx")

数据处理与分析

数据处理是数据分析的关键步骤,pandas 提供了丰富的操作来处理数据,例如筛选、排序、分组等。

数据筛选与过滤

我们可以根据特定的条件筛选 DataFrame 中的行。

# 创建一个 DataFrame
data = {"姓名": ["Alice", "Bob", "Charlie", "David", "Eva"],"年龄": [25, 22, 23, 24, 21],"成绩": [85, 78, 92, 88, 76]
}
df = pd.DataFrame(data)# 筛选成绩大于 80 的行
filtered_df = df[df["成绩"] > 80]
print("成绩大于 80 的学生:\n", filtered_df)

输出:

成绩大于 80 的学生:姓名  年龄  成绩
0    Alice  25  85
2  Charlie  23  92
3    David  24  88

数据分组与聚合

通过 groupby() 方法,我们可以对数据进行分组并进行聚合操作,例如计算平均值、最大值等。

# 按年龄进行分组,计算每个年龄的平均成绩
grouped = df.groupby("年龄")["成绩"].mean()
print("按年龄分组后的平均成绩:\n", grouped)

数据清洗

数据清洗是确保数据质量的关键步骤,例如处理缺失值、去除重复行等。

# 处理缺失值
# 创建带有缺失值的 DataFrame
data = {"姓名": ["Alice", "Bob", "Charlie", None],"年龄": [25, None, 35, 28],"成绩": [88, 92, None, 85]
}
df = pd.DataFrame(data)# 填充缺失值
filled_df = df.fillna({"姓名": "未知", "年龄": df["年龄"].mean(), "成绩": 0})
print("填充缺失值后的 DataFrame:\n", filled_df)

输出:

填充缺失值后的 DataFrame:姓名        年龄   成绩
0    Alice  25.000000  88.0
1      Bob  29.333333  92.0
2  Charlie  35.000000   0.0
3       未知  28.000000  85.0
数据操作描述示例
数据筛选根据条件筛选行df[df["成绩"] > 80]
数据分组与聚合按某列分组并计算统计量df.groupby("年龄")["成绩"].mean()
缺失值处理填充或去除缺失值df.fillna(value)

数据可视化入门:matplotlib

matplotlib 是 Python 最流行的数据可视化库之一,它允许我们绘制折线图、柱状图、散点图等,以直观地展示数据分析的结果。

绘制折线图

折线图通常用于展示数据的变化趋势。

import matplotlib.pyplot as plt# 数据
months = ["一月", "二月", "三月", "四月", "五月"]
sales = [3000, 3200, 3500, 4000, 4200]# 绘制折线图
plt.plot(months, sales, marker="o")
plt.xlabel("月份")
plt.ylabel("销售额 (元)")
plt.title("月销售额趋势")
plt.grid()
plt.show()

绘制柱状图

柱状图用于比较不同类别的数据。

# 数据
names = ["Alice", "Bob", "Charlie", "David", "Eva"]
scores = [85, 78, 92, 88, 76]# 绘制柱状图
plt.bar(names, scores, color="skyblue")
plt.xlabel("姓名")
plt.ylabel("成绩")
plt.title("学生成绩对比图")
plt.show()

绘制散点图

散点图用于展示两组数据之间的关系。

# 数据
age = [22, 25, 30, 35, 40, 45, 50]
salary = [2500, 2700, 3000, 3400, 3700, 4000, 4300]# 绘制散点图
plt.scatter(age, salary, color="green")
plt.xlabel("年龄")
plt.ylabel("工资 (元)")
plt.title("年龄与工资的关系")
plt.show()
图表类型描述示例
折线图展示数据的变化趋势plt.plot()
柱状图比较不同类别的数据plt.bar()
散点图展示两组数据之间的关系plt.scatter()

综合示例:学生成绩分析与可视化

在这个综合示例中,我们将结合 pandasmatplotlib,对学生成绩进行分析并将结果进行可视化展示。

示例:分析并可视化学生成绩

  1. 创建一个包含学生姓名、年龄和成绩的数据表。

  2. 计算平均成绩并筛选成绩高于平均值的学生。

  3. 使用柱状图可视化每位学生的成绩。

import pandas as pd
import matplotlib.pyplot as plt# 创建 DataFrame
data = {"姓名": ["Alice", "Bob", "Charlie", "David", "Eva"],"年龄": [25, 22, 23, 24, 21],"成绩": [85, 78, 92, 88, 76]
}
df = pd.DataFrame(data)# 计算平均成绩
average_score = df["成绩"].mean()
print(f"平均成绩: {average_score:.2f}")# 筛选成绩高于平均值的学生
above_average_df = df[df["成绩"] > average_score]
print("成绩高于平均值的学生:\n", above_average_df)# 可视化学生成绩
plt.bar(df["姓名"], df["成绩"], color="orange")
plt.xlabel("姓名")
plt.ylabel("成绩")
plt.title("学生成绩柱状图")
plt.axhline(y=average_score, color='r', linestyle='--', label=f"平均成绩: {average_score:.2f}")
plt.legend()
plt.show()

输出:

平均成绩: 83.80
成绩高于平均值的学生:姓名  年龄  成绩
0    Alice  25  85
2  Charlie  23  92
3    David  24  88

此图展示了每位学生的成绩,红色虚线表示平均成绩,可以直观地看到哪些学生的成绩高于平均值。

总结

在本篇文章中,我们学习了如何使用 pandas 进行数据处理和分析,包括数据的读取、清洗、筛选和分组等操作。随后,我们学习了如何使用 matplotlib 进行数据可视化,绘制了折线图、柱状图和散点图。最后,通过一个综合示例,我们结合 pandasmatplotlib 对学生成绩进行了分析与可视化展示。通过掌握这些工具和技巧,你将能够更好地处理数据并从中提取有用的信息。

在下一篇文章中,我们将完成一个综合的小项目,把之前学习的所有知识整合在一起,进一步加深对 Python 编程的理解。敬请期待!

http://www.yayakq.cn/news/949573/

相关文章:

  • 做网站收会员费违法吗网站文章在哪发布做seo
  • php可以做网站建设网站文章哪里下载
  • 澄迈网站制作中国卫生健康网入口
  • 怎么做王者荣耀网站百度域名是什么意思
  • 免费网页制作的网站深圳科技公司黄页
  • 学习做网站的孛校东莞网站建设公司注册
  • 安装discuz x 3.1 网站虚拟主机的要求淘宝联盟返利网站怎么做
  • 怎么做仲博注册网站河北省住房和城市建设局采购网站
  • 网站如何安装dedecms网站建设流程时间表
  • 设计网站logo网站如何做用户的实名认证
  • 服务佳的网站建设我想做跑腿网站怎么做
  • 网站建设雨点域名停域app免费下载
  • 网站后面的官网是如何做的室内设计培训班排行榜
  • 重庆网站建设推广优化h5制作的软件
  • 网站后台导入excel表格海珠区专业做网站公司
  • 宁波网站关键词推广郑州千锋教育培训机构怎么样
  • 贵州省建设厅官网站杭州 电子商务网站建设
  • 河南省建设局网站首页潜江资讯网最新招聘
  • 网站动态背景怎么做网站盈利
  • 自备服务器做网站实业公司注册条件
  • 怎么查看网站disallow网络建设合同范本
  • 建网站的论坛长治网站建设龙采科技技术支持
  • 滨海做网站需要多少钱建设企业网站个人网银
  • 网站安全检测官网做门名片设计网站
  • 滨海网站建设服务商深圳企业官方网站建设
  • 教学网站开发北京网站建设哪家强
  • 毕业设计做视频网站好做么广告投放网
  • 山东建设工程招标网官方网站微信小程序h5
  • 网站设计案例欣赏厦门网站设计公司找哪家福建小程序开发
  • 学院网站建设规划网站怎么做搜索栏