Skip to content

Latest commit

 

History

History
200 lines (125 loc) · 7.42 KB

learn-data-analysis-with-julia.md

File metadata and controls

200 lines (125 loc) · 7.42 KB

学习 Julia 数据分析

原文:www.kdnuggets.com/learn-data-analysis-with-julia

学习 Julia 数据分析

图片作者

Julia 是另一种编程语言,类似于 Python 和 R。它结合了 C 语言的速度和 Python 的简洁性。Julia 在数据科学领域越来越受欢迎,所以如果你想扩展你的技能并学习一种新语言,你来对地方了。


我们的前 3 个课程推荐

1. 谷歌网络安全证书 - 快速开启网络安全职业生涯

2. 谷歌数据分析专业证书 - 提升你的数据分析技能

3. 谷歌 IT 支持专业证书 - 支持你在 IT 领域的组织


在本教程中,我们将学习如何为数据科学设置 Julia,加载数据,进行数据分析,然后进行可视化。这个教程非常简单,以至于任何人,包括学生,都可以在 5 分钟内开始使用 Julia 进行数据分析。

1. 设置你的环境

  1. 下载 Julia 并通过访问 (julialang.org) 安装包。

  2. 现在我们需要为 Jupyter Notebook 设置 Julia。启动一个终端(PowerShell),输入 julia 启动 Julia REPL,然后输入以下命令。

using Pkg
Pkg.add("IJulia")
  1. 启动 Jupyter Notebook,并以 Julia 作为内核开始新的笔记本。

  2. 创建新的代码单元,并输入以下命令以安装必要的数据科学包。

using Pkg
Pkg.add("DataFrames")
Pkg.add("CSV")
Pkg.add("Plots")
Pkg.add("Chain")

2. 加载数据

对于这个示例,我们使用来自 Kaggle 的 在线销售数据集。它包含了不同产品类别的在线销售交易数据。

我们将加载 CSV 文件并将其转换为 DataFrames,这类似于 Pandas DataFrames。

using CSV
using DataFrames

# Load the CSV file into a DataFrame
data = CSV.read("Online Sales Data.csv", DataFrame)

3. 探索数据

我们将使用 'first' 函数,而不是 head 来查看 DataFrame 的前 5 行。

first(data, 5)

学习 Julia 数据分析

要生成数据摘要,我们将使用 describe 函数。

describe(data)

学习 Julia 数据分析

类似于 Pandas DataFrame,我们可以通过提供行号和列名来查看特定值。

data[3,"Product Name"]

输出:

"Levi's 501 Jeans"

4. 数据操作

我们将使用 filter 函数根据特定值过滤数据。它需要列名、条件、值和 DataFrame。

filtered_data = filter(row -> row[:"Unit Price"] > 230, data)
last(filtered_data, 5)

学习 Julia 数据分析

我们也可以创建一个类似于 Pandas 的新列。这么简单。

data[!, :"Total Revenue After Tax"] = data[!, :"Total Revenue"] .* 0.9  
last(data, 5)

使用 Julia 学习数据分析

现在,我们将基于不同的“产品类别”计算“税后总收入”的均值。

using Statistics

grouped_data = groupby(data, :"Product Category")
aggregated_data = combine(grouped_data, :"Total Revenue After Tax" .=> mean)
last(aggregated_data, 5)

使用 Julia 学习数据分析

5. 可视化

可视化类似于 Seaborn。在我们的案例中,我们正在可视化最近创建的汇总数据的条形图。我们将提供 X 和 Y 列,然后是标题和标签。

using Plots

# Basic plot
bar(aggregated_data[!, :"Product Category"], aggregated_data[!, :"Total Revenue After Tax_mean"], title="Product Analysis", xlabel="Product Category", ylabel="Total Revenue After Tax Mean")

总均收入的大部分是通过电子产品产生的。可视化效果完美且清晰。

使用 Julia 学习数据分析

要生成直方图,我们只需提供 X 列和标签数据。我们希望可视化销售商品的频率。

histogram(data[!, :"Units Sold"], title="Units Sold Analysis", xlabel="Units Sold", ylabel="Frequency")

使用 Julia 学习数据分析

看起来大多数人购买了一到两件商品。

为了保存可视化效果,我们将使用savefig函数。

savefig("hist.png")

6. 创建数据处理管道

创建一个合适的数据管道是自动化数据处理工作流程、确保数据一致性,以及实现可扩展和高效的数据分析的必要条件。

我们将使用Chain库来创建之前用来基于不同产品类别计算总均收入的各种函数链。

using Chain
# Example of a simple data processing pipeline
processed_data = @chain data begin
       filter(row -> row[:"Unit Price"] > 230, _)
       groupby(_, :"Product Category")
       combine(_, :"Total Revenue" => mean)
end
first(processed_data, 5)

使用 Julia 学习数据分析

为了将处理后的 DataFrame 保存为 CSV 文件,我们将使用CSV.write函数。

CSV.write("output.csv", processed_data)

结论

在我看来,Julia 比 Python 更简单、更快。我习惯的许多语法和函数在 Julia 中也可用,如 Pandas、Seaborn 和 Scikit-Learn。那么,为什么不学习一门新语言,并开始做得比你的同事更好呢?此外,这也将帮助你获得与研究相关的工作,因为大多数临床研究人员更倾向于使用 Julia 而不是 Python。

在本教程中,我们学习了如何设置 Julia 环境、加载数据集、进行强大的数据分析和可视化,并构建用于可重复性和可靠性的数据管道。如果你有兴趣了解更多关于 Julia 的数据科学知识,请告诉我,这样我可以为你们编写更多简单的教程。

Abid Ali Awan (@1abidaliawan)是一位认证的数据科学专业人士,他喜欢构建机器学习模型。目前,他专注于内容创作,并撰写关于机器学习和数据科学技术的技术博客。Abid 拥有技术管理硕士学位和电信工程学士学位。他的愿景是利用图神经网络构建一款 AI 产品,帮助那些遭遇心理健康问题的学生。

更多信息