2014-06-18 23 views
8

Tôi tương đối mới với Julia và đang tìm kiếm một cách hiệu quả để đọc từ một tệp văn bản và lưu trữ từng cột "" trong một mảng (tôi có 2 cột, nhưng một giải pháp chung sẽ là tuyệt vời là tốt). Ví dụ: tôi muốn đầu vàođọc thành mảng trong Julia

1 2 
    3 4 
    5 6 

để được đọc thành hai mảng, ví dụ x và y, sao cho x = [1 3 5] và y = [2 4 6]. Tôi có một giải pháp làm việc (có thể không biên dịch, chỉ cần tự do giao nó), nhưng tôi cảm thấy như có một cách hiệu quả hơn để làm điều này hơn để hcat và để đọc các dòng tập tin đầu vào của dòng. Bất kỳ đề xuất được nhiều đánh giá cao!

Hiện nay, tôi đang làm những điều sau đây, nhiều hay ít:

x=[]; 
y=[]; 
f=open("filename"); 
f=readlines(f); 
for str in f 
    s1, s2= split(str, " "); 
    s1=int(s1); 
    s2=int(s2); 
    x=hcat(x, s1); 
    y=hcat(y, s2); 
end 
+0

Nếu câu trả lời hữu ích, vui lòng chấp nhận :) – Manuel

Trả lời

6

Đây là một cách.

julia> myarray=int(open(readdlm,"mynums.txt")) 
3x2 Array{Int32,2}: 
1 2 
3 4 
5 6 

julia> x=myarray[:,1] 
3-element Array{Int32,1}: 
1 
3 
5 

julia> y=myarray[:,2] 
3-element Array{Int32,1}: 
2 
4 
6 
Các vấn đề liên quan