在 Julia 中使用 CSV 文件
CSV 文件(逗号分隔值文件)是使用逗号分隔值和字段的纯文本文件。它主要用于以表格或电子表格的形式存储数据。表格或电子表格的每一行都是一条记录,其中填充了属于 n 个字段(或列)的数据。它用于非常轻松地导入或导出数据和表格,并以大多数编程语言的扩展名“.csv”存储。
Julia 提供了各种文件处理方法来对 CSV 文件执行操作。这些方法可用于创建 CSV 文件、向文件添加内容、更新文件等。
在 Julia 中导入 CSV 文件
首先,您需要在 Julia 命令行上使用以下命令安装 CSV 包:
using pkg
pkg.add("Package name")
CSV 包是一个内置包,其中定义了“N”个方法来执行 n 个操作。
Julia
# using pkg to install packages
using Pkg
# using pkg to add csv package file to library
Pkg.add("CSV")
Julia
# using Installed csv package for working with csv files
using CSV
# reading the csv file
CSV.read("myfile.csv")
Julia
using CSV
# using dataframes package to create a dataframe
using DataFrames
# Creating DataFrame
ab = DataFrame(Name = ["AKANKSHA", "TANYA", "PREETIKA", "VRINDA", "JAHNVI"],
Age = [42, 44, 22, 81, 93],
Salary = [540000, 650000, 900000, 770000, 850000],
RESIDENCE=["DELHI", "DELHI", "UP", "HARYANA", "UP"]
)
# modifying the content of myfile.csv using write method
CSV.write("myfile.csv", ab)
Julia
# new file created
touch("newfile.csv")
# file handling in write mode
efg = open("newfile.csv", "w")
# Creating a new dataframe
mn = DataFrame(Name = ["AKANKSHA", "TANYA", "PREETIKA", "VRINDA", "JAHNVI"],
Age = [42, 44, 22, 81, 93],
Salary = [540000, 650000, 900000, 770000, 850000],
RESIDENCE=["DELHI", "DELHI", "UP", "HARYANA", "UP"]
)
# writing to the newly created file
CSV.write("newfile.csv", mn)
Julia
# Format
# CSV.File(filename;drop=["colulm1", "column2"....., column n])
# dropping "RESIDENCE" column from our file (newfile.csv")
CSV.File("newfile.csv"; drop=["RESIDENCE"])
Julia
# Format for select command
# CSV.File(file; select=[column1, column2])
# Select the columns 'Name and Salary'
CSV.File("newfile.csv"; select=["Name", "Salary"])
# Selecting columns number wise
# selecting column 1 and 3
CSV.File("newfile.csv"; select=(i, nm) -> i in (1, 3))
# selecting column 1, 2, 3
CSV.File("newfile.csv"; select=(i, nm) -> i in (1, 2, 3))
Julia
using DataFrames
file = CSV.read("myfile.csv",DataFrames)
现在您必须将数据保存到 CSV 文件中。
从 CSV 文件中读取数据
在这里,我们将使用 CSV 包和read()方法来读取 CSV 文件的内容:
朱莉娅
# using Installed csv package for working with csv files
using CSV
# reading the csv file
CSV.read("myfile.csv")
修改 CSV 文件的内容
在这里,我们将学习如何借助 CSV 包和 DataFrames 包中的write()方法修改现有文件的内容。
朱莉娅
using CSV
# using dataframes package to create a dataframe
using DataFrames
# Creating DataFrame
ab = DataFrame(Name = ["AKANKSHA", "TANYA", "PREETIKA", "VRINDA", "JAHNVI"],
Age = [42, 44, 22, 81, 93],
Salary = [540000, 650000, 900000, 770000, 850000],
RESIDENCE=["DELHI", "DELHI", "UP", "HARYANA", "UP"]
)
# modifying the content of myfile.csv using write method
CSV.write("myfile.csv", ab)
现在我们将使用 CSV write()方法覆盖现有的“.csv”文件。
写入 CSV 文件
在这里,我们将使用touch()命令创建一个新文件,因此使用 DataFrames 和 CSV 包将新创建的数据帧内容写入新文件。
朱莉娅
# new file created
touch("newfile.csv")
# file handling in write mode
efg = open("newfile.csv", "w")
# Creating a new dataframe
mn = DataFrame(Name = ["AKANKSHA", "TANYA", "PREETIKA", "VRINDA", "JAHNVI"],
Age = [42, 44, 22, 81, 93],
Salary = [540000, 650000, 900000, 770000, 850000],
RESIDENCE=["DELHI", "DELHI", "UP", "HARYANA", "UP"]
)
# writing to the newly created file
CSV.write("newfile.csv", mn)
删除 CSV 文件的内容
在这里,我们将学习使用 Julia 中的drop命令从特定表或电子表格中删除特定列条目或多个列条目。
朱莉娅
# Format
# CSV.File(filename;drop=["colulm1", "column2"....., column n])
# dropping "RESIDENCE" column from our file (newfile.csv")
CSV.File("newfile.csv"; drop=["RESIDENCE"])
查询 CSV 文件
在这里,我们将学习根据需要从整个表或电子表格中查询特定列或一组列,我们甚至可以在查询中使用运算符来检索一组满足特定条件的行。
朱莉娅
# Format for select command
# CSV.File(file; select=[column1, column2])
# Select the columns 'Name and Salary'
CSV.File("newfile.csv"; select=["Name", "Salary"])
# Selecting columns number wise
# selecting column 1 and 3
CSV.File("newfile.csv"; select=(i, nm) -> i in (1, 3))
# selecting column 1, 2, 3
CSV.File("newfile.csv"; select=(i, nm) -> i in (1, 2, 3))
因此,可以在 Julia 中使用内置的 CSV 包对 CSV 文件执行“N”个操作,该包具有预定义的“M”个具有唯一操作的方法。
在使用 CSV.read(“myfile.csv”) 时,如果您发现类似“”ArgumentError:提供有效的接收器参数“”的错误,请使用以下命令解决此错误:
朱莉娅
using DataFrames
file = CSV.read("myfile.csv",DataFrames)