MySkill - 用于数据科学的 Python

用于数据科学的 Python

为什么要使用 Phyhon?
它很容易被业余爱好者学习,易于阅读和高效的语法,并且拥有一个非常适合编程的大规模生态系统。 Python 也有一套完整的工具箱来帮助我们进行数据科学。

如何运行 Python?

最传统的方式是通过phyton网站下载。然后对于数据科学家来说,他们可以使用 Anaconda、colab(谷歌提供的免费平台)或 Notebook 运行 Python。

数据类型

  • 整数:整数。例如:1、2、-1、-2
  • 浮点数:十进制数。例如:1.0、2.0、-1.0、-2.0
  • 字符串:使用“”或“”的文本,不能用于计算。例如:“文本”、“文本”、“1”
  • 布尔值:数据仅包含 2 个值,True 和 False

数据采集

  • 列表:数据有序且可变的数据集合。例如:A = [1,2,3,“b”]
  • 元组:数据有序且不可变的数据集合。例如:A=(1,2,3,“b”)
  • set:唯一的数据集合,没有有序且不可变的数据。例如:A =
  • 数据字典:具有键值对的数据集合,没有数据排序,并且是可变的。例如:D =

比较逻辑运算符

执行或评估语句、指令或函数调用的顺序。由条件语句、循环和函数调用支配的 Python 程序控制流

  • == 等于
  • != 不等于
  • < 小于
  • 大于

  • <= 小于等于
  • = 大于或等于

布尔值有点不同

  • 和:如果布尔值为真,则为真。除了那个假。例如:真与真→真,真与假→假
  • 或:如果所有条件之一为真,则为真。真或真→真,真或假→真
  • 不:否定。例如:非真→假,非假→真

数据科学生命周期

Data science life cycle (Source: https://www.datascience-pm.com/data-science-life-cycle/)

熊猫

Pandas 已经成为数据分析工具箱的行业标准,因为它具有操作表格数据、基础可视化、描述性统计等功能。

要使用 pandas,我们可以在使用 pd 初始化的笔记本上导入它。

 将熊猫导入为 pd

在熊猫中读取文件:

  • csv: df = pd.read_csv('file.csv)
  • 优秀:df = pd.read_excel()
  • 镶木地板 pd.read_parquet()
  • sql数据库 pd.read_sql_query()

熊猫属性:

  • df.columns: **** 来自 DataFrame 的列标签。
  • df.dtypes:每列的数据类型
  • df.index:来自 DataFrame 的索引
  • df.shape:数据框大小

熊猫方法:

  • df.head([n]), df.tail([n]): 显示顶部列表(头部)或以下(尾部)的 n 个数据
  • df.describe():每列的描述性统计结果(最小值、最大值等)
  • df.dropna():删除所有包含na(零值)的行
  • df.info():打印 DataFrame 的简短摘要。

麻木的

Numpy 是一个用于标准数值计算的开源库,它提供了许多用于计算数组和矩阵的函数。 Numpy 提供了两种用于数值计算的数据结构:数组和矩阵。使用 numpy 数组的计算比 python 列表更有效。

要使用 numpy,我们可以将它导入到我们的 notebook 中,使用 np 进行初始化。

 导入 numpy 和 np

numpy 中的数值运算和语法

  • 转置: **** np.转置(数组)
  • 分钟: **** np.min(数组)
  • 最大限度: **** np.max(数组)
  • 中位数: **** np.median(数组)
  • 率率: **** np.mean(数组)
  • 点积: **** 数组.点(数组)
  • 交叉产品: **** array.cross(another_array)
  • 逆: **** np.linalg.inv(数组)

案例分析

使用一年中每个月的销售额值创建列表。我们可以假设从 1 月到 12 月的数据销售。

 销售额 = [20, 22, 28, 35, 45, 60, 65, 64, 50, 52, 57, 60]

Output list penjualan

11月销量多少

列表的索引从 0 开始。所以,1 月在索引 0 上,12 月在索引 11 上。结论,11 月在索引 10 上,所以我们可以用索引 10 来显示 11 月份的数据销售情况。

 sales_november = 销售额[10] print("11 月销售额是", sales_november)

Output sales in November

3-4月销量增长多少

我们已经从之前的案例研究中得出结论,我们可以使用指数来获取每个月的销售额,因此计算 3 月至 4 月增长的公式为

增长 =(4 月销售额 - 3 月销售额)* 100 / 3 月销售额

 增长 = (销售额[3] - 销售额[2]) * 100 / 销售额[2] print("3-4月销售额增长", growth, "%")

Output growth March to April

使用循环,每月创造销售增长

我们将在这里使用循环来显示每个月的销售增长。该公式与以前相同,但我们在循环中获得的参数不同。因为一月份没有增长,所以我们可以设置增长等于0。

增长=(销售指数月-前销售指数月)*100/前销售指数月

 对于我,枚举中的数据(penjualan): 如果 i==0:增长 = 0 别的: 增长 = (sales[i] - sales[i-1]) * 100 / sales[i-1] print("当月的增长", i+1,"is", growth, "%")

Output growth each month

使用销售参数和 index_bulan 创建函数 hitung_penjualan 以显示输出销售增长

我们将使用参数 penjualan 创建函数 hitung_pertumbuhan,这是销售数据,index_bulan 是我们希望看到增长的指数月份。

 def count_growth(销售额,index_month): 如果 index_bulan == 0:增长 = 0 别的:  
 增长 = (sales[month_index] - sales[month_index-1]) * 100 / sales[month_index-1] 回报增长 index_month = 5 print("MoM 销售增长月份", index_month, "is", calculate_growth(sales, index_month))

Output using function using index 5

从 penjualan 创建数据框并仅对 6 月、7 月和 8 月的数据进行切片

创建新的字典名称 dict_penjualan 并使用我们插入的值从 2021 年开始按月频繁和 penjualan 从我们之前的列表中插入。

创建 dict_penjualan 后,我们将其转换为新的数据框 df,因为我们需要对其进行切片以获取 6 月、7 月和 8 月的数据。对数据帧进行切片,规则为 dataframe[startIndex:lastIndex+1]。在这种情况下,六月在索引 5 中,八月在索引 7 中。

 从日期时间导入日期时间 将熊猫导入为 pd 将 numpy 导入为 np  
 dict_sales = { 'periode': pd.date_range(start="2021-01", end="2022-01", freq="1M"), “销售”:销售 } df = pd.DataFrame(sale_dict) df[5:8]

Output slicing June — August

使用数据 penjualan 显示折线图

导入 seaborn 以准备可视化数据。我们需要跟踪一段时间内的销售数据,因此,我们将使用折线图来查看趋势线。

 将 matplotlib.pyplot 导入为 plt 将 seaborn 导入为 sns sns.set() sns.lineplot(data=df).set_xticks(range(0, 12))

Lineplot sales by index month

结论

感谢 MySkill,导师和导师,在这个训练营中指导和教给我有关 Python for Data Science 的知识。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/37882/58181910

posted @ 2022-09-19 10:58  哈哈哈来了啊啊啊  阅读(26)  评论(0编辑  收藏  举报