数据分析——pandas作业2

第一题

1.读取 五粮液2020.xlsx 数据
2.查看该数据的基本信息
3.计算每一天各指标的差异值
4.计算其 pre_close 的增长率
5.将 pre_close 的增长率添加至数据中(新增列)
6.将 pct_change 该列 呈现的 NaN 用0填充
7.查看 pre_close 与 pct_change 的相关性
8.将 pct_change 这列乘以100 保留两位小数 成为百分比

1.读取 五粮液2020.xlsx 数据

  • 代码
import numpy as np
import pandas as pd

wly_data = pd.read_excel('五粮液2020.xlsx')
print(wly_data)
  • 运行结果
    在这里插入图片描述

2.查看该数据的基本信息

  • 代码
print(wly_data.info())
print(wly_data.describe())
  • 运行结果
    在这里插入图片描述

3.计算每一天各指标的差异值

  • 代码
print(wly_data.loc[:,'open':'pre_close'].diff())
  • 运行结果
    在这里插入图片描述

4.计算其 pre_close 的增长率

  • 代码
print(wly_data['pre_close'].pct_change())
  • 运行结果
    在这里插入图片描述

5.将 pre_close 的增长率添加至数据中(新增列)

  • 代码
wly_data['pct_change'] = wly_data['pre_close'].pct_change()
print(wly_data)
  • 运行结果
    在这里插入图片描述

6.将 pct_change 该列 呈现的 NaN 用0填充

  • 代码
wly_data['pct_change'].fillna(0,inplace=True)
print(wly_data)
  • 运行结果
    在这里插入图片描述

7.查看 pre_close 与 pct_change 的相关性

  • 代码
print(wly_data[['pre_close','pct_change']].corr())
  • 运行结果
    在这里插入图片描述

8.将 pct_change 这列乘以100 保留两位小数 成为百分比

  • 代码

wly_data['pct_change'] = wly_data['pct_change'].apply(lambda x: '%.2f%%'%(x*100))
print(wly_data)
  • 运行结果
    在这里插入图片描述
### 使用 Pandas 进行数据分析的大作业示例 #### 项目背景 为了更好地理解和掌握 Pandas 库的功能及其在实际数据分析中的应用,本大作业旨在通过对一个具体的数据集进行全面分析来展示如何利用 Pandas 完成数据清洗、探索性分析以及可视化等工作流程。 #### 数据获取与准备 选择公开可用的鸢尾花(Iris)数据集作为本次项目的样本数据源。该数据集中包含了不同种类鸢尾花卉的各项测量指标,非常适合用于入门级别的机器学习算法训练和测试[^1]。 ```python import pandas as pd from sklearn.datasets import load_iris # 加载鸢尾花数据集并转换为 DataFrame 格式 data = load_iris() df = pd.DataFrame(data.data, columns=data.feature_names) df['species'] = data.target ``` #### 数据清理与预处理 对于任何真实世界里的原始数据来说,在正式进入建模阶段之前都需要经历必要的清洁工作以提高模型性能。这里主要涉及缺失值填充、异常点检测等方面的操作: - **检查是否存在缺失值** ```python print(df.isnull().sum()) ``` 由于 Iris 数据集本身质量较高,并不存在明显的缺失情况;但在其他情况下,则需根据具体情况采取相应的措施来进行填补或删除处理。 - **查看是否有重复记录** ```python duplicate_rows_df = df[df.duplicated()] print("number of duplicate rows: ", duplicate_rows_df.shape[0]) ``` 同样地,Iris 数据集中也没有发现重复项的存在。如果存在大量冗余信息的话,应该考虑去除这些不必要的条目以免影响后续计算效率。 #### 探索性数据分析 (EDA) ##### 基础统计描述 借助于 `describe()` 方法可以快速获得数值型特征列的基本统计数据概览,包括均值(mean)、标准差(stddeviation)等参数。 ```python description = df.describe(include='all') print(description) ``` ##### 可视化分布状况 绘制直方图有助于观察各个属性之间的关系模式及趋势变化规律。此处采用 Seaborn 库辅助完成绘图任务。 ```python import seaborn as sns sns.pairplot(df, hue="species", markers=["o", "s", "D"]) plt.show() ``` 上述代码片段将会生成一张散点矩阵图,其中不同的标记形状代表了三种类型的鸢尾植物个体差异所在之处。 #### 结果解释与总结 经过一系列基于 Pandas 的操作之后,已经能够较为全面深入地了解到所选主题范围内的重要知识点。这不仅限于简单的读取文件内容或是简单聚合运算等功能层面的知识积累,更重要的是培养起了一套完整的思考框架——即从问题定义出发直至得出结论整个过程都离不开严谨细致的态度支撑。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值