Create a function from a table

2 Ansichten (letzte 30 Tage)
alpedhuez
alpedhuez am 24 Mär. 2018
Kommentiert: Star Strider am 24 Mär. 2018
Suppose I have a matrix
A = [ 3 0.1; 1 0.2; 2 0.3];
I now want to have a function that takes an entry of the first column and gives the entry in the second column.
In other words, I want to have a matrix B where, for each element in the first column, its second column is the entry of the corresponding second column in A. For example,
B = [ 2 0.3; 2 0.3; 3 0.1; 1 0.2];
Please advise.

Akzeptierte Antwort

Star Strider
Star Strider am 24 Mär. 2018
Try this:
A = [ 1 0.1; 2 0.2; 3 0.3];
A2fcn1 = @(k) A(k,2);
SecondColumn = A2fcn1(2)
SecondColumn =
0.2000
If you want to interpolate instead, use the interp1 (link) function.
  2 Kommentare
alpedhuez
alpedhuez am 24 Mär. 2018
Thank you. Let me work on it.
Star Strider
Star Strider am 24 Mär. 2018
As always, my pleasure.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 24 Mär. 2018
Given any finite sets of example values, there are aleph-one (the infinity of cardinal numbers) functions that will exactly calculate the given values to within round-off error. There is no way to automatically choose between these functions as one being "better" than the other -- not unless you specify before-hand which forms of function are to be preferred.
  1 Kommentar
alpedhuez
alpedhuez am 24 Mär. 2018
Not that complicated. The question is how to efficiently fill in the second column of B given A and the first column of B.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Mathematics finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by