Julia – 数据帧
Julia 中的 Data Frames 是Python中 Pandas 包的替代方案。数据框以表格结构表示数据。我们可以使用这些数据框来操作数据。可以对数据帧进行各种操作,以更改数据和进行行列转换。
数据框主要用于以行列方式访问数据。
与Python安装包类似,Julia 也包含导入方法。
安装所需软件包:
可以使用 Jupyter 笔记本或 Atom 软件对 Julia 进行编程。要在 Julia 中安装数据框包,请使用以下命令:
using Pkg
Pkg.add("DataFrames")
暂时,程序中涵盖了 Julia 中的 DataFrame,方法是通过关键字参数“using”导入它们。数据以行列方式表示,并使用我们在稍后读取时遇到的操作进行操作。要在代码中导入 DataFrames 包,请使用以下命令:
using DataFrames
创建数据框
Julia 中的数据框是使用预定义的DataFrame()函数创建的。它将值和列名作为参数并创建一个数据框。
例子:
Julia
# Creation of a Data Frame
dataframe = DataFrame(I = [17.20, 22.30], II = [49, missing], III = ["Hello", "Nicy"])
Julia
# Creating a Data frame
dataframe2 = DataFrame(I = 1:5, II = ["True", "False", "False", "True","False"],
C = ["Approved", "Dissapproved", "Approved",
"Approved","Dissapproved"])
Julia
# Accessing second column
op1 = dataframe2.II
Julia
# Accessing using double quotes
op2 = dataframe2."II"
Julia
# Accessing first column
op3 = dataframe2[!, :I]
Julia
# Getting names of columns
# Using names() function
op4 = names(dataframe2)
# Using propertynames() function
op5 = propertynames(dataframe2)
Julia
# Creating an empty data frame
data = DataFrame(first = Int[], sec = String[])
Julia
# Adding first column
push!(data, (17, "Cat"))
Julia
# Renaming columns of a data frame
ren = rename!(dataframe2, :I => :first)
Julia
# Displaying the head of a Data frame
# Using head() function
head1 = head(dataframe2)
Julia
# Displaying the tail of a data frame
# Using the tail() function
tail1 = tail(dataframe2)
Julia
# Deleting a row of a data frame
# Using delete!() function
delete1 = delete!(dataframe2, 4:5)
Julia
# Deleting a column of a data frame
# Using delete!() function
del = select!(dataframe2, Not(:II))
输出:
如上所述,我们了解了如何在 Julia 中创建数据框。让我们通过了解行列结构化数据来了解上面创建的数据框的结构。
这里的列是 I、II 和 III,它们充当用户定义的关键字来表示列。
- “I”列包含浮点值。
- “II”列包括一个整数值和一个缺失值。
- “III”列包含字符串字符。
访问数据框的列
在 Julia 中,可以通过“data.column”访问列,其中“data”是我们创建 DataFrame 的变量元素,“column”是用户定义的 DataFrame 列的关键字。
首先,让我们创建一个数据框以对其执行进一步的操作
朱莉娅
# Creating a Data frame
dataframe2 = DataFrame(I = 1:5, II = ["True", "False", "False", "True","False"],
C = ["Approved", "Dissapproved", "Approved",
"Approved","Dissapproved"])
现在让我们看一下使用一些操作访问列元素的示例。
朱莉娅
# Accessing second column
op1 = dataframe2.II
我们已经访问了创建的 dataframe2 对象中的第二列,并将检索到的列存储在“op1”变量中。
输出:
朱莉娅
# Accessing using double quotes
op2 = dataframe2."II"
我们可以与上面访问第二列的代码进行比较。同样,我们也可以通过将它们包含在双引号中来访问任何列。
输出:
朱莉娅
# Accessing first column
op3 = dataframe2[!, :I]
语法表示访问第一列
输出:
朱莉娅
# Getting names of columns
# Using names() function
op4 = names(dataframe2)
# Using propertynames() function
op5 = propertynames(dataframe2)
上面的代码代表了 Julia 'names' 和 'propertynames' 中的两个基本函数。
- 在 Julia 中,函数'names'显示用户创建的数据框中的列名。
- 函数'propertynames'使用 ' : ' 将列名显示为符号。
输出:
向 DataFrame 添加元素
在这里,我们正在创建一个没有信息的数据框,而不是声明列的数据类型。
朱莉娅
# Creating an empty data frame
data = DataFrame(first = Int[], sec = String[])
现在我们已经创建了一个数据框并存储在一个名为“数据”的变量中。
- 第一列包括整数数据类型的数据。
- 第二列包含 String 数据类型的数据。
现在让我们使用“push() ”函数将数据推送到 DataFrame 列中。
朱莉娅
# Adding first column
push!(data, (17, "Cat"))
输出:
重命名 DataFrame 的列
在 Julia 中,重命名操作由函数rename!()完成。此函数更改用户已列出的列的名称或关键字。
朱莉娅
# Renaming columns of a data frame
ren = rename!(dataframe2, :I => :first)
创建数据框的子集
通过将数据框分成 Head 和 Tail 可以轻松创建子集。数据框的头部可以使用head()函数显示,尾部可以使用tail()函数显示。
头部函数:
这个函数说明了我们创建的 DataFrame 的头部。
朱莉娅
# Displaying the head of a Data frame
# Using head() function
head1 = head(dataframe2)
head函数返回我们 DataFrame 的头部或顶部。
输出:
尾巴函数:
tail函数说明了创建的 DataFrame 的尾部。
朱莉娅
# Displaying the tail of a data frame
# Using the tail() function
tail1 = tail(dataframe2)
对于创建的 DataFrame,我们进行了尾部操作。该函数显示数据框中最底部的值。
输出:
删除 DataFrame 的行和列
Julia 中的删除操作是使用delete!()函数执行的。此函数将数据框名称和要删除的行或列作为参数并执行删除。
朱莉娅
# Deleting a row of a data frame
# Using delete!() function
delete1 = delete!(dataframe2, 4:5)
正如上面代码中所声明的,我们对“dataframe2”执行了删除操作并删除了第 4 行。
输出:
现在我们遇到了使用函数' delete!() '删除一行。
现在让我们消除一个列元素:
朱莉娅
# Deleting a column of a data frame
# Using delete!() function
del = select!(dataframe2, Not(:II))
在上面的代码中,我们访问了 Dataframe2 的列,不包括“II”列。
输出: