Why does matlab create a single row when creating a matrix of multiple columns?

조회 수: 7 (최근 30일)
I have to following problem: In reality i have two columns consisting of 250k rows, but i fail to creat a matrix by just using matrix = [column1 column2]. Did i change something in my settings? See the following simple example of my problem
a = [1:10]'
b = [1:10]'
c = [a b]
The answer is
"Columns 1 through 18
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8
Columns 19 through 20
9 10 "
instead of a matrix consisting of two columns. What is going on here?
  댓글 수: 6
mootje_3000
mootje_3000 2019년 4월 7일
I did the following wrong: A matrix consisting of 250k rows and 4 columns, when I wanted to delete a number of rows I used normdata(deleterows) = [], while I should've used normdata(deleterows,:)=[].
Thank you so much for replying madhan ravi and star strider. Sorry for any inconvenience.
madhan ravi
madhan ravi 2019년 4월 7일
No need for an apology, mistakes are inevitable sometimes.

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

답변 (1개)

madhan ravi
madhan ravi 2019년 4월 7일
편집: madhan ravi 2019년 4월 7일
[a,b] - you were concatenating two row vectors horizontally which results in a row vector, instead do:
c = [a(:) b(:)]
%or
c = [a;b].'
Also this works:
>> a = [1:10]'
b = [1:10]'
c = [a b]
a =
1
2
3
4
5
6
7
8
9
10
b =
1
2
3
4
5
6
7
8
9
10
c =
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
>>

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by