Scenario: I am trying to plot values in a line: I have Max, Min, lower bound 1, upper bound 1, median value and my "Ret" value (which will change at each row, and each row would have its own line "graph").Each of these data point (max, min, bounds...) do have a numerical value.
Problem: I already tried all the graphing options in excel, but can't seem to find any way to get the wanted outcome.
Question: Is there a direct way to do that in excel?
This is what I am trying to achieve (each row will have one of these graphs, once I find out how to do it, I will write a VBA macro to automate this):
Apparently, the best way to do this is to assign a second value to all the rows and instead of plotting as a single column of values, plot each row as a coordinate. This answer came as an advice from a user in another forum, to the same question posted here (goo.gl/icL38d).
For a sample data:
Value X Y
min -5 0
max 5 0
median 0 0
lowb1 -2 0
lowb2min -4 0
upb1 2 0
upb2 4 0
Target 3 0
I plotted this as a scatterplot with the coordinates, and configured the target data point to stand out. The result was very close to the originally intended one.
Related
I've tried a few things on this and settled on a 'cheap' solution. Wanted to know if this can be done directly and more elegantly.
Problem Statement and Sample Data
Assume we have a table in excel with ~200 columns and a large number of rows (~10k).
Sample Data:
identifier
val1
val2
val3
...
val200
ID_1
100
102
34
...
89
We want to add a column at the end that shows us how many "moving average" outliers exist. A moving average outlier is defined as a point that is outside the range (mean - 2 * std deviations, mean + 2 * std deviations), where the mean and std dev is calculated using the previous 10 values (therefore its a moving average outlier).
We will not test the first 10 values. But from val11, the previous 10 values will be used to form the window and we want to test if the value is an outlier.
My Solution so far
I created another table of same dimensions as the original. In cells from val11 (to val200, for all columns), I put in the formula below in the new table. And then, I can simply sum the columns in each row in the new table.
Assume val11 is on X2 in the "shocks" worksheet (for first row):
=IF(OR(shocks!X2<AVERAGEA(shocks!D2:W2)-2STDEVA(shocks!D2:W2),shocks!X2>AVERAGEA(shocks!D2:W2)+2STDEVA(shocks!D2:W2)),1,"")
But if possible, I want to avoid having a second table since it bloats and slows down the file. Any help would be greaty appreciated
So I have a table that looks like this
Arrival Time Probability
0 .09
1 .17
2 .27
3 .2
4 .15
5 .12
And I want excel to randomly create one of the 6 arrival time values based on the given probabilities using RAND(). Is there any way to do this other than to have nested If loops?
here's what I came up with.
I would add a column C that calculates the cumulative brackets from 0-1 each digit would represent. If you start with zero and use formulas to calculate your brackets, you can change the probability if needed in the future. (formulas in photo below)
For example, arrival time of 0 would be between 0 and .09.
Then you can use use the rand() function in column D to generate your random number between 0 and 1 and add a lookup function in column E, or wherever you like. Screenshots of the data and formulas:
Replace your probabilities with cumulative probabilities (with a preliminary line for 0) and use VLOOKUP, exploiting the fact that VLOOKUP finds the closest match:
I am trying to look up a value in a matrix based on a given date. The matrix has the first day of the week along the vertical axis, and the first day of the month along the horizontal axis.
For a given day, e.g. 31/08/15 I would like to match the exact date to the vertical axis of the matrix (i.e. 31/08/15), and the month to the horizontal axis (1/08/15).
So in the example below, an input of 31/08/15 should provide an output of 3.
01/06/2015 01/07/2015 01/08/2015 01/09/2015
03/08/2015 1 0 0 0
10/08/2015 0 2 0 0
17/08/2015 0 0 3 0
24/08/2015 0 0 0 4
31/08/2015 0 0 3 0
I am trying and failing with index and match formulae.
I have tried the following:
=index(area where to look, match(31/08/15,first column,0),match(and(month(31/08/15),year(31/08/15)),(and(month(first row),year(first row)),0)
Hope this is clear, thanks!
You can use an INDEX function with two MATCH functions top supply both the row and column.
The formula in D8 is,
=INDEX($B$2:$E$6,MATCH(C8,$A$2:$A$6,0),MATCH(DATE(YEAR(C8),MONTH(C8),1),$B$1:$E$1,0))
I'm a little concerned about the dates matching exactly down column A but a little maths manipulation with the WEEKDAY function would take care of that.
=INDEX($B$2:$E$6,MATCH(C9-WEEKDAY(C9, 2)+1,$A$2:$A$6,0),MATCH(DATE(YEAR(C9),MONTH(C9),1),$B$1:$E$1,0))
Here you go:
=INDEX($B$2:$E$6,MATCH(DATE(2015,8,31),$A$2:$A$6,),MATCH(DATE(2015,8,1),$B$1:$E$1,))
I'm attempting to use pivot tables to interpolate a value from a large, multi variable table in excel. Is there any way to interpolate on a range within a Calculated Field? (Or any other good way to accieve this).
What I'm trying to do -
I have the following table, and I'm trying to interpolate the Delta for each combination of Alpha and Beta at a Gamma of 5. With this simplified data, the answer would 15 for each set Alpha/Beta. In my real data, the Gammas and Deltas are not always nice even arrays, though they are sorted properly.
Alpha Beta Gamma Delta
A X 0 10
A X 10 20
A Y 0 10
A Y 10 20
B X 0 10
B X 10 20
B Y 0 10
B Y 10 20
What I've tried
Formula -> Calculated Field -> Formula: = INTERP(5,Gamma,Delta)
*Note that INTERP is a custom linear interpolater. yv = INTERP(xv,x,y).
Excel won't let me do that, so I was wondering if there is a better way? I could obviously just manualy pull the interpolation arrays, but my data has ~50 Alphas and ~50 Betas, so that would take a very long time. I've tried automatically pulling the arrays with a combination of INDEX and MATCH (using array formulas), and it works. The only problem is that it becomes so slow that every time the cells recalculate, it ties up the program for ~30 seconds or so.
Any ideas would be appreciated. I'm thinking of using pivot tables, but a regular formula solution or VBA solution would work too. Thanks!
I am doing a project that requires me to study the several condition that affect GPS accuracy, and after I collected a set of data and dumped it to Excel, I was trying to plot a scatter graph, grouping the data into different series according to a value: in this case, I wanted to plot the Latitude and Longitude values as the XY scatter values, and separate the series by the number of satellites when the fix was obtained.
Timestamp Latitude Longitude #Satellites
133009.279 3839.3354 904.7395 0
133010.279 3839.3354 904.7395 0
133011.279 3839.3354 904.7395 0
133026 3845.9863 907.4513 4
133027 3845.986 907.4491 4
133028 3845.9851 907.448 4
133222 3845.9909 907.4866 4
133023.28 3845.9817 907.4429 5
133024.28 3845.9867 907.4549 5
133048 3845.9868 907.452 5
133205 3845.9929 907.4858 5
133206 3845.9927 907.486 5
133207 3845.9925 907.4862 5
133056 3845.9885 907.4569 6
133057 3845.9881 907.4578 6
133223 3845.9905 907.4868 6
133224 3845.9901 907.487 6
I have tried selecting the three rows, adding the series afterwards by selecting the appropriate row, and even tried pivot tables, but these don't allow for scatter-plots unfortunately.
All this to no avail, but I am positive that you can plot the graph. Does anyone have an idea?
PS: Manually selecting the series myself isn't an option, since there is a large number of data. If I could select all of the data for one specific value in a row, though, would let my select each series, and I think I would be able to make it from there.
Have a look at the XY charts from FusionCharts XT - http://www.fusioncharts.com/demos/gallery/#bubble-and-xycharts