NumPy
NumPy 是 Python 的一个开源数值计算扩展库,用于数组计算。它可以用来存储和处理大型矩阵,比 Python 自带的列表更高效。
1.数组创建:
np.array([])
: 用于创建数组。例如,np.array([1, 2, 3])
创建一个一维数组。
import numpy as np`` ``# 创建一个一维数组``arr = np.array([1, 2, 3])``print("一维数组:", arr)
2.数组操作
-
索引:类似于 Python 列表,用于访问数组中的元素。
-
切片:选择数组的特定部分。
-
reshape:改变数组的形状而不改变其数据。
-
concatenate:用于合并两个或多个数组。
# 索引``print("第一个元素:", arr[0])`` ``# 切片``print("前两个元素:", arr[:2])`` ``# reshape``arr_reshaped = arr.reshape(1, 3)``print("改变形状后的数组:\n", arr_reshaped)`` ``# concatenate``arr2 = np.array([4, 5, 6])``arr_concatenated = np.concatenate((arr, arr2))``print("合并后的数组:", arr_concatenated)``
3.数学运算:
-
sum:计算数组所有元素的总和。
-
mean:计算数组元素的平均值。
-
min/max:找到数组中的最小值或最大值。
# 总和``print("数组总和:", np.sum(arr))`` ``# 平均值``print("平均值:", np.mean(arr))`` ``# 最小值和最大值``print("最小值:", np.min(arr))``print("最大值:", np.max(arr))``
Pandas
Pandas 是基于 NumPy 的库,提供了快速、灵活以及表达式丰富的数据结构,旨在使“关系”或“标签”数据的操作既简单又直观。
- 数据结构:
-
DataFrame:二维大小可变的表格结构,含有异构类型的列。
-
Series:一维标签数组,能够保存任何数据类型。
-
import pandas as pd`` ``data = {'Name': ['Tom', 'Nick', 'Krish', 'Jack'],` `'Age': [20, 21, 19, 18]}``df = pd.DataFrame(data)
ages = pd.Series([20, 21, 19, 18], name="Age")
- 数据导入:
-
pd.read_csv():从 CSV 文件导入数据。
-
pd.read_excel():从 Excel 文件导入数据。
-
pd.read_sql():从 SQL 数据库读取数据。
df = pd.read_csv('xxx/file.csv')``df = pd.read_excel('xxx/file.xlsx')
import sqlite3``conn = sqlite3.connect('database.db')``df = pd.read_sql_query("SELECT * FROM table_name", conn)
- 数据探索:
-
head():查看前几行数据。
-
describe():显示数据的统计摘要(计数、平均值、标准差等)。
-
info():查看数据的概要信息(行数、列数、列数据类型、内存信息)。
-
df.head()``df.describe()``df.info()
- 数据清洗:
- 处理缺失值:例如,使用
dropna()
移除或用fillna()
填充缺失值。
df.dropna() # 删除缺失值``df.fillna(0) # 用 0 填充缺失值
- 数据过滤:使用条件语句选取数据子集。
df[df['Age'] > 20] # 选择年龄大于 20 的记录
- groupby:根据某些条件将数据分组并进行聚合。
df.groupby('Name').sum() # 按名称分组并计算每组的总和
- 数据合并:
- merge():用于连接两个或更多的 DataFrame。
df1 = pd.DataFrame({'Key': ['K0', 'K1', 'K2', 'K3'],` `'A': ['A0', 'A1', 'A2', 'A3']})``df2 = pd.DataFrame({'Key': ['K0', 'K1', 'K2', 'K3'],` `'B': ['B0', 'B1', 'B2', 'B3']})`` ``result = pd.merge(df1, df2, on='Key')
- concat():用于在一定轴上连接/合并两个或多个 pandas 对象。
pd.concat([df1, df2], axis=1)
Matplotlib/Seaborn
这两个库用于数据可视化。Matplotlib 是一个底层库,提供了大量的基础工具来创建图表,而 Seaborn 基于 Matplotlib,提供了更高级的接口,使绘制图表更加容易。
- 绘图:
-
plt.plot():用于绘制线形图。
import matplotlib.pyplot as plt`` ``# 数据``x = [1, 2, 3, 4, 5]``y = [2, 3, 5, 7, 11]`` ``# 绘制线形图``plt.plot(x, y)`` ``# 添加标题和轴标签``plt.title('Simple Line Plot')``plt.xlabel('X Axis')``plt.ylabel('Y Axis')`` ``# 显示图表``plt.show()
-
plt.scatter():用于绘制散点图。
# 数据``x = [1, 2, 3, 4, 5]``y = [2, 3, 5, 7, 11]`` ``# 绘制散点图``plt.scatter(x, y)`` ``# 添加标题和轴标签``plt.title('Simple Scatter Plot')``plt.xlabel('X Axis')``plt.ylabel('Y Axis')`` ``# 显示图表``plt.show()
-
sns.barplot():在 Seaborn 中绘制条形图。
import seaborn as sns`` ``# 数据``categories = ['Category A', 'Category B', 'Category C']``values = [10, 20, 30]`` ``# 绘制条形图``sns.barplot(x=categories, y=values)`` ``# 添加标题``plt.title('Bar Plot with Seaborn')`` ``# 显示图表``plt.show()
-
sns.lineplot():在 Seaborn 中绘制线形图。
# 数据``x = [1, 2, 3, 4, 5]``y = [2, 3, 5, 7, 11]`` ``# 绘制线形图``sns.lineplot(x=x, y=y)`` ``# 添加标题``plt.title('Line Plot with Seaborn')`` ``# 显示图表``plt.show()
- 图表定制:
-
标题:给图表添加标题。
-
轴标签:给 x 轴和 y 轴添加标签。
-
图例:为图表添加图例,区分不同的数据系列。
-
样式:调整图表的颜色、线型等外观样式。
点击下方安全链接前往获取
CSDN大礼包:《Python入门&进阶学习资源包》免费分享
👉Python实战案例👈
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉Python书籍和视频合集👈
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉Python副业创收路线👈
这些资料都是非常不错的,朋友们如果有需要《Python学习路线&学习资料》,点击下方安全链接前往获取
CSDN大礼包:《Python入门&进阶学习资源包》免费分享
本文转自 网络,如有侵权,请联系删除。