中小企业网站设计总结,wordpress 首页轮播,商场设计与商品陈列,丰镇市网站丰镇高铁在哪个位置建设Pandas 是 Python 中非常流行的数据分析和处理库#xff0c;特别适用于处理结构化数据。它构建在 NumPy 之上#xff0c;提供了更高级的功能#xff0c;例如数据清理、整理、筛选和统计分析。Pandas 的核心数据结构是 Series 和 DataFrame#xff0c;分别用于处理一维数据和…Pandas 是 Python 中非常流行的数据分析和处理库特别适用于处理结构化数据。它构建在 NumPy 之上提供了更高级的功能例如数据清理、整理、筛选和统计分析。Pandas 的核心数据结构是 Series 和 DataFrame分别用于处理一维数据和二维数据。
下面是 Pandas 的详细用法介绍
1. 导入Pandas
在使用 Pandas 之前首先需要导入库通常使用别名 pd
import pandas as pd2. 数据结构
a) Series一维数据结构
Series 是一种类似于 Python 列表或字典的对象但每个数据项都有一个索引。
# 创建一个简单的Series
s pd.Series([1, 3, 5, 7, 9])
print(s)
# 输出
# 0 1
# 1 3
# 2 5
# 3 7
# 4 9
# dtype: int64可以为 Series 自定义索引
s pd.Series([1, 3, 5, 7, 9], index[a, b, c, d, e])
print(s)
# 输出
# a 1
# b 3
# c 5
# d 7
# e 9
# dtype: int64b) DataFrame二维数据结构
DataFrame 是 Pandas 中最常用的数据结构可以理解为一个二维表格类似于数据库中的表格或 Excel 表。
# 从字典创建DataFrame
data {Name: [Tom, Jerry, Mickey],Age: [20, 22, 21],Score: [88, 92, 95]}df pd.DataFrame(data)
print(df)
# 输出
# Name Age Score
# 0 Tom 20 88
# 1 Jerry 22 92
# 2 Mickey 21 953. 读取数据
a) 读取CSV文件
Pandas 可以轻松地读取各种文件格式比如 CSV 文件、Excel 文件、SQL 数据库等。
# 读取CSV文件
df pd.read_csv(data.csv)
print(df.head()) # 查看前5行数据b) 读取Excel文件
df pd.read_excel(data.xlsx, sheet_nameSheet1)
print(df.head())4. 数据选择
a) 选择列
你可以通过列名来选择 DataFrame 中的某一列或多列。
# 选择单列
print(df[Name])# 选择多列
print(df[[Name, Score]])b) 选择行使用loc和iloc
loc 是通过标签进行索引。iloc 是通过整数位置进行索引。
# 通过标签选择行
print(df.loc[0]) # 选择第1行# 通过整数位置选择行
print(df.iloc[1]) # 选择第2行# 选择多行多列
print(df.loc[0:2, [Name, Age]])5. 数据过滤和条件筛选
Pandas 提供了方便的方式来对数据进行条件筛选。
# 筛选年龄大于21的数据
filtered_df df[df[Age] 21]
print(filtered_df)# 多条件筛选
filtered_df df[(df[Age] 20) (df[Score] 90)]
print(filtered_df)6. 数据清理
a) 处理缺失值
缺失值在数据分析中非常常见Pandas 提供了多种方法来处理它们。
# 查看缺失值情况
print(df.isnull())# 删除包含缺失值的行
df_cleaned df.dropna()
print(df_cleaned)# 用指定值填充缺失值
df_filled df.fillna(0)
print(df_filled)b) 删除重复值
df_deduped df.drop_duplicates()
print(df_deduped)c) 修改列名
df.rename(columns{Name: Student Name, Age: Student Age}, inplaceTrue)
print(df)7. 数据转换
a) 数据类型转换
# 将Age列转换为浮点数
df[Age] df[Age].astype(float)
print(df.dtypes)b) 应用函数apply() 和 map()
# 对DataFrame的列应用函数
df[Score] df[Score].apply(lambda x: x 5)
print(df)# 对Series应用函数
df[Name] df[Name].map(lambda x: x.upper())
print(df)8. 数据统计和分析
Pandas 提供了丰富的统计函数和聚合功能方便进行快速的数据分析。
a) 描述性统计
# 基本统计信息
print(df.describe())b) 分组聚合
# 按Age列分组计算Score的平均值
grouped_df df.groupby(Age)[Score].mean()
print(grouped_df)c) 透视表Pivot Table
# 创建透视表
pivot_table pd.pivot_table(df, valuesScore, indexAge, aggfuncmean)
print(pivot_table)9. 数据的合并和连接
a) 合并数据
可以使用 merge() 函数将两个 DataFrame 进行合并类似 SQL 中的 join。
# 左连接合并
df1 pd.DataFrame({ID: [1, 2, 3], Name: [Alice, Bob, Charlie]})
df2 pd.DataFrame({ID: [1, 2, 4], Score: [85, 90, 95]})merged_df pd.merge(df1, df2, onID, howleft)
print(merged_df)b) 连接数据
可以使用 concat() 函数进行数据的纵向或横向拼接。
# 纵向拼接
df1 pd.DataFrame({A: [1, 2], B: [3, 4]})
df2 pd.DataFrame({A: [5, 6], B: [7, 8]})concatenated_df pd.concat([df1, df2], axis0)
print(concatenated_df)10. 数据可视化
Pandas 可以与 Matplotlib 配合使用进行简单的数据可视化。
import matplotlib.pyplot as plt# 简单的折线图
df[Score].plot()
plt.show()# 柱状图
df[Score].plot(kindbar)
plt.show()11. 导出数据
a) 导出到CSV文件
df.to_csv(output.csv, indexFalse)b) 导出到Excel文件
df.to_excel(output.xlsx, sheet_nameSheet1, indexFalse)12. 时间序列处理
Pandas 提供了非常强大的时间序列功能可以方便地进行时间戳数据的处理。
# 创建时间序列
date_range pd.date_range(2024-01-01, periods5, freqD)
print(date_range)# 将时间戳作为索引
df_time pd.DataFrame({Value: [1, 2, 3, 4, 5]}, indexdate_range)
print(df_time)总结
Pandas 是一个强大而灵活的数据分析工具能够处理从简单到复杂的数据操作适合于处理表格数据、时间序列数据、统计分析等。Pandas 提供的高级数据结构和丰富的函数库使得数据分析任务变得更加高效。