Calling text file in matlab
Show older comments
if i have text file that has three column say
1 2 1
3 1 1
2 3 1
and also have a matrix s =
[0.3 0.4 0.6
0.1 0.5 0.7
0.2 0.11 0.9]
firstly: with respect to text file, i want to consider first column as i and second column as j then if the third column equal 1 then put its corresponding value in matrix s in new array say A else put remaining value in matrix s in new another array say B.
i.e i want this result
A=[0.4, 0.2, 0.7] B=[0.3, 0.6, 0.1, 0.5, 0.11, 0.9]
2 Comments
Guillaume
on 9 Jun 2015
Where do the values go if the third column is not 1? At present your rule is:
coordinate is present and third column is 1 -> put in A
coordinate not present -> put in B
what is the rule for
coordinate is present and third column is not 1 -> ??
muhammad ismat
on 14 Jun 2015
Accepted Answer
More Answers (2)
Guillaume
on 9 Jun 2015
coordinates = [1 2 1
3 1 1
2 3 1];
s = [0.3 0.4 0.6
0.1 0.5 0.7
0.2 0.11 0.9];
linindices = sub2ind(size(s), coordinates(:, 1), coordinates(:, 2))';
A = s(linindices)
B = s(setdiff(1:numel(s), linindices))
1 Comment
muhammad ismat
on 10 Jun 2015
Walter Roberson
on 9 Jun 2015
0 votes
dlmread() or load() the text file into a matrix, and then work with it in memory.
1 Comment
muhammad ismat
on 10 Jun 2015
Categories
Find more on Live Scripts and Functions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!