📜  以表格形式将数据写入 Julia 中的文件

📅  最后修改于: 2022-05-13 01:55:03.135000             🧑  作者: Mango

以表格形式将数据写入 Julia 中的文件

Julia 是一种高级、高性能、动态编程语言,它允许用户加载、保存和操作各种类型文件中的数据,以用于数据科学、分析和机器学习目的。表格数据是具有表格结构的数据,可以轻松写入文本、CSV、Excel 等各种文件。

为了轻松地对数据和文件执行此类操作,我们添加了 Queryverse.jl 包,它使我们可以轻松使用其他有用的包,例如 Query.jl、FileIO.jl、CSVFiles.jl 等。

Julia
# Adding the Queryverse package
using Pkg
Pkg.add("Queryverse")


Julia
# Creating a text file
touch("geek.txt")


Julia
# Writing data into a text file in a tabular format
# Opening the created file
f = open("geek.txt", "w")
 
# Writing data into text file
write(f, "A B C
       1 4 7
       2 5 8
       3 6 9")
        
# Closing text file
close(f)


Julia
using Queryverse
 
# Creating a DataFrame
df = DataFrame(subject =["Physics", "Chemistry", "English"], marks =[45, 62, 59])
 
# Writing a DataFrame into csv file
df |> save("marks.csv")
 
# can also be implemented as - save("marks.csv", df)


Julia
# Separating columns with ';'
df |> save("marks.csv", delim =';')


Julia
# Creating a DataFrame
df = DataFrame(subject = ["Physics", "Chemistry", "English"],
               marks = [45, 62, 59])
 
# Removing the column names from the first row of the file
df |> save("marks.csv", header = false)


Julia
# Creating a DataFrame
df = DataFrame(subject =["Physics + Chemistry", "English"], marks =[107, 59])
 
# Changing separation characters in the file
df |> save("marks.csv", quotechar ='+', escapechar ='/')


Julia
# Creating a DataFrame
df = DataFrame(subject = ["Maths", "Science", "Computers"],
               marks = [61, 72, 49])
 
# Writing the DataFrame into an Excel file
df |> save("marks.xlsx")


Julia
# Changing name of the sheet in the excel file
df |> save("marks.xlsx", sheetname = "marks in excel")



将表格数据写入文本文件

首先,我们使用touch()函数创建一个文本文件。

朱莉娅

# Creating a text file
touch("geek.txt")


现在我们可以打开文件并将数据写入其中,如下所示。

朱莉娅

# Writing data into a text file in a tabular format
# Opening the created file
f = open("geek.txt", "w")
 
# Writing data into text file
write(f, "A B C
       1 4 7
       2 5 8
       3 6 9")
        
# Closing text file
close(f)



输出:

将表格数据写入 CSV 文件

DataFrames 用于以表格形式存储数据,这些 DataFrames 可以通过使用Queryverse.jl包和save()函数写入 CSV 或 Excel 文件。 Queryverse.jl包允许FileIO.jl包使用CSVFiles.jl包来实现这一点。

朱莉娅

using Queryverse
 
# Creating a DataFrame
df = DataFrame(subject =["Physics", "Chemistry", "English"], marks =[45, 62, 59])
 
# Writing a DataFrame into csv file
df |> save("marks.csv")
 
# can also be implemented as - save("marks.csv", df)



我们已成功将表格数据写入 CSV 文件。可以使用各种关键字作为save()函数的参数来更改正在写入的数据的格式。

delim关键字用于用一个字符分隔文件中的列,我们可以通过将其等同于关键字来指定该字符。

朱莉娅

# Separating columns with ';'
df |> save("marks.csv", delim =';')



DataFrame 的列名占据文件的第一行。要更改这一点,我们可以使用header关键字参数并将其等同于 false 以删除文件中的列名。

朱莉娅

# Creating a DataFrame
df = DataFrame(subject = ["Physics", "Chemistry", "English"],
               marks = [45, 62, 59])
 
# Removing the column names from the first row of the file
df |> save("marks.csv", header = false)



当使用save()函数将数据写入文件时,数据中的任何文本都将在双引号 (") 之间表示,如果文本中有双引号,则在其前面放置一个反斜杠 (\)差异化。我们可以使用quotecharescapechar关键字参数更改这些用于表示的字符,如下所示。

朱莉娅

# Creating a DataFrame
df = DataFrame(subject =["Physics + Chemistry", "English"], marks =[107, 59])
 
# Changing separation characters in the file
df |> save("marks.csv", quotechar ='+', escapechar ='/')



将表格数据写入 Excel 表格

将数据写入excel表格的过程与CSV文件的过程相同,上面已经讨论过,但是我们必须在save()中指定一个扩展名为'*.xlsx'的文件而不是'.csv'函数。

朱莉娅

# Creating a DataFrame
df = DataFrame(subject = ["Maths", "Science", "Computers"],
               marks = [61, 72, 49])
 
# Writing the DataFrame into an Excel file
df |> save("marks.xlsx")



在 excel 文件中,我们可以使用sheetname关键字参数更改正在写入数据的工作表的名称,如下所示。

朱莉娅

# Changing name of the sheet in the excel file
df |> save("marks.xlsx", sheetname = "marks in excel")



在 Julia 中,我们不仅可以在上面讨论的三个文件中写入表格数据,还可以在 Feather、Stata、SPSS、SAS 等各种其他文件中写入表格数据。保存函数适用于所有这些文件类型。我们只需要向我们要写入的文件提及相应的扩展名(*.feature、*.dta、*.por、*.sav)。