I have a 6x4 matrix, in which each line has id, x-cor,y-cor, and z-cor for all 3 molecules continuously at time step t1 forllowed by same at t2.
I want to remodify the matrix such that each new file consists only the cord of given molecule
for eg;
1 3.34 4.56 7.86
2 7.09 4.99 5.98
3 8.67 6.90 7.00
1 3.78 2.89 4.78
2 4.78 7.24 6.38
3 4.56 3.10 6.27
I want out put as in file 1as
1 3.34 4.56 7.86
1 3.78 2.89 4.78
and in file 2 as
2 7.09 4.99 5.98
2 4.78 7.24 6.38
and file3 as
3 8.67 6.90 7.00
3 4.56 3.10 6.27

 채택된 답변

Dyuman Joshi
Dyuman Joshi 2019년 12월 21일
편집: Dyuman Joshi 2021년 1월 4일

1 개 추천

You can use following commands.
Let the 6x4 matrix be 'xyz'.
file1 = xyz(1,:;4,:)
file2 = xyz(2,:;5,:)
file3 = xyz(3,:;6,:)

댓글 수: 1

Walter Roberson
Walter Roberson 2019년 12월 21일
MATLAB does not use [] for indexing, and that would not be valid syntax if you changed to () instead of []

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2019년 12월 21일

1 개 추천

If the matrix is definitely 6 x 4, just use indexing as appropriate
dlmwrite('file1.txt', YourMatrix([1 4], :), ' ')
dlmwrite('file2.txt', YourMatrix([2 5], :), ' ')
dlmwrite('file3.txt', YourMatrix([3 6], :), ' ')

카테고리

도움말 센터File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

질문:

2019년 12월 21일

편집:

2021년 1월 4일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by