Skip to content
Related Articles

Related Articles

Writing Data in Tabular form to Files in Julia
  • Last Updated : 01 Aug, 2020

Julia is a high level, high performance, dynamic programming language which allows users to load, save, and manipulate data in various types of files for data science, analysis, and machine learning purposes. Tabular data is data that has a structure of a table and it can be easily written into various files like text, CSV, Excel, etc. 

To perform such operations on data and files with ease, we add the Queryverse.jl package which provides us ease of use for other useful packages such as Query.jl, FileIO.jl, CSVFiles.jl, etc.

Julia




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

Writing Tabular Data to Text Files

First, we create a text file using the touch() function.

Julia






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

And now we can open the file and write data into it as shown below.

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)

 
Output:

Writing Tabular Data to CSV Files

DataFrames are used to store data in a tabular form and these DataFrames can be written into CSV or Excel files by using the Queryverse.jl package and the save() function. Queryverse.jl package lets the FileIO.jl package use the CSVFiles.jl package to implement this.

Julia




using Queryverse
  
# Ceating 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)

 
 



 We have successfully written tabular data into a  CSV file. The format of the data being written can be changed using various keywords as arguments to the save() function. 

delim keyword is used to separate columns in the file with a character that we can specify by equating it to the keyword.

Julia




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

 
 

The column names of the DataFrame take up the first row of the file. To change this we can use the header keyword argument and equate it to false to remove the column names in the file.

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)

 
 

 When the data is written into a file with the save() function, any text in the data will be represented between double quotes( ” ) and if there is a double quote in the text, a backlash ( \ ) is placed before it for differentiation. We can change these characters used for representation with the quotechar and the escapechar keyword arguments as shown below.

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 ='/')

 
 

 

Writing Tabular Data to Excel Sheets

The process for writing data into excel sheets is the same as that of CSV files, which has been discussed above, but we have to specify a file with the extension ‘*.xlsx’ instead of a ‘.csv’ in the save() function.

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")

 
 

 In the excel file, we can change the name of the sheet in which the data is being written into with the sheetname keyword argument as shown below.

Julia




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

 
 

In Julia, we can write tabular data not only in the three files discussed above also in various other files like Feather, Stata, SPSS, SAS, etc. The save function is applicable to all these file types. We just have to mention the respective extension (*.feature, *.dta, *.por, *.sav) to the file we want to write into.

 

My Personal Notes arrow_drop_up
Recommended Articles
Page :