01 Julia語言基礎(chǔ)知識

julia 是在科學(xué)計算中比較新穎的語言,也算作目前科學(xué)計算中的一枝獨秀。今天,探索一下基礎(chǔ)的Julia語言的一些文件讀取的相關(guān)知識。

1. 讀取文件數(shù)據(jù)

在工科學(xué)習(xí)中,經(jīng)常使用一些數(shù)據(jù)模型和算法,而相當(dāng)一部分的數(shù)據(jù)模型和數(shù)據(jù)集都是通過文件進(jìn)行讀取的。并且一個典型計算的典型流是從文件讀取數(shù)據(jù),運行一些計算,然后把結(jié)果寫入記錄用的輸出文件,文件讀、寫或輸入、輸出是非常有用且重要的過程。假設(shè)我們有一個如下這樣的名為basic_data.txt文件,使用基本的open()函數(shù),便可以實現(xiàn)基礎(chǔ)的文件讀取和寫入。

我們使用下列代碼打開這個文件,并進(jìn)行讀?。?/p>

file_name = "basic_data.txt"
datafile = open(file_name)
data = readlines(datafile)
close(datafile)

其中data是一個數(shù)組,每一個數(shù)組元素存放了文件的每一行數(shù)據(jù)。比如data[1]存放的是文件的第一行文本內(nèi)容。所以可以使用for循環(huán)進(jìn)行每一行文本數(shù)據(jù)的輸出。(這里順便說一下,julia的數(shù)組索引是從1開始的,這個需要注意。)

for line in data
    println(line)
    # 輸出內(nèi)容
    # 進(jìn)行每一行的處理
    do_somthing()
end

2.進(jìn)行文件寫入

同時,文件寫入可以使用函數(shù)println(),如下所示:

outputfile = "uotputfile.txt"
outputfiledata = open(outputfile,"w")
println(outputfiledata,"This is a pen.")
println(outputfiledata,"This is a pencile.")
close(outputfiledata)

3.csv文件讀取

讀取csv文件需要借助于其余的包才可以直接調(diào)用。代碼如下:

using DelimitedFiles
csvfilename = "data.csv"
csvdata = readdlm(csvfilename,",",header = true)
data = csvdata[1]
header = csvdata[2]

使用header = ture可以將表頭從所有數(shù)據(jù)中分離出來,并映射到讀取之后得到的數(shù)組中的第二個元素中去。并且以Float64類型的數(shù)組來表示獲取得到的數(shù)據(jù)內(nèi)容,由于csv的原因,其獲取得到的數(shù)據(jù)data本質(zhì)上仍然是數(shù)組或者矩陣。

4.csv文件寫入

對于csv的寫入則可以直接使用原始的寫入函數(shù)進(jìn)行操作,操作比較簡單。代碼如下:

value1 = ["computer","zhangsan"]
value2 = ["computer","lisi"]

filename = "student.csv"
filedata = open(filename,"w")
println(filedata,"subject,name")
for i in 1:length(value1)
    println("$value1[i],$value2[i]")
end
close(filedata)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容