Data Table as Global Definition
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Data Table as Global Definition
When you choose Insert --> Data --> Table, Mathcad inserts a table with the definition operator (:=). I want to use the global definition operator (~ keystroke for the triple equals sign) so that I can put this table at the bottom of the worksheet.
I tried pasting the table into a new global definition, and it pastes as a matrix, and there doesn't appear to be a way to convert it back into a table.
Is there any way of using a data table with the global definition operator?
Using Mathcad 14
- Labels:
-
Statistics_Analysis
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Is there any way of using a data table with the global definition operator?
No, sorry. You can't use any component based item with a global defintion. Why not just put the data table in an area at the top of the worksheet and then collapse the area?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Thanks. That was actually the work-around I started to use. It's not horrible, but I know I'm going to get "what's this ..." questions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Andrew Kelly wrote:
Thanks. That was actually the work-around I started to use. It's not horrible, but I know I'm going to get "what's this ..." questions.
Andrew,
I'm a little lost. Is your data defined within Mathcad or brought in from another program?
You could post a worksheet and you might get more responses on possible alternative methods.
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
See attached (V11). The content in my example is a made-up case.
The Data Table seems to fit all of my needs. It's embedded in the worksheet. It doesn't have a fixed number of rows / columns. Adding / deleting rows/columns, and data to the table is relatively painless. In this format, I can extract the info out of the table using hlookup, vlookup, match, submatrix, etc. functions. I've got it set-up so that the order of the rows / columns and number of rows / columns doesn't matter
The only issue is that there doesn't appear to be a way to use a variable size table with a global definition operator.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Andrew Kelly wrote:
See attached (V11). The content in my example is a made-up case.
The Data Table seems to fit all of my needs. It's embedded in the worksheet. It doesn't have a fixed number of rows / columns. Adding / deleting rows/columns, and data to the table is relatively painless. In this format, I can extract the info out of the table using hlookup, vlookup, match, submatrix, etc. functions. I've got it set-up so that the order of the rows / columns and number of rows / columns doesn't matter
The only issue is that there doesn't appear to be a way to use a variable size table with a global definition operator.
From what you demonstrate, there is not much to understand of all those things you "WantToDo".
You don't have a data table really, just a collection. You can create a collection of anything, any size, spool to file WRITEPRN, recall any component from the filed collection then extract at will from any component of the collection using a data extractor [a few lines general utility].
jmG
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
The example was intentionally obfuscated. If you refer to my original question, I wanted a way to turn the colon equals sign into a triple equals sign, so I could refer to "Data" above the point in the worksheet where it is defined.
I prefer not to use external files, if possible; I prefer to have the data behind "Data" embedded in the worksheet.
Does anyone have a way to get a triple equals sign (~) without using a matrix?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Does anyone have a way to get a triple equals sign (~) without using a matrix?
Sorry, but I think there really is no way to do this. The only thing that can be to the right of a global equals is a standard math region. The only such region that can hold mulitple numbers is a matrix. Data tables, Excel components, scripted components, etc, are not allowed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Andrew Kelly wrote:
The example was intentionally obfuscated. If you refer to my original question, I wanted a way to turn the colon equals sign into a triple equals sign, so I could refer to "Data" above the point in the worksheet where it is defined.
I prefer not to use external files, if possible; I prefer to have the data behind "Data" embedded in the worksheet.
Does anyone have a way to get a triple equals sign (~) without using a matrix?
There is a workaround. You could either use a scripted component to collect the data from the table( Maybe a textbox at the top of the worksheet) or use an Embedded Excel component.
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Here is an example of a Textbox scripted component.
Another collab's help with more experience in scritpting tjhan me is required. i want the textbox to be able to collect a range
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
There is a workaround. You could either use a scripted component to collect the data from the table
I thought about that. It actually works fine in version 11, but not so fine in later versions. The problem is that when you open the worksheet the data is not on the screen, and is therefore not calculated. Therefore you can't get it. So you have to scroll to the end of the worksheet or hit Ctrl F9. That still won't get the data though, because the component is executed before the data table. So you have to click on the button after hitting Ctrl F9. So much of a PITA I don't think it's much of a solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Richard,
The push button seems to works fine. I just click the button and the data is collected.
Definanlty a workaround for me .
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Which version are you using? I've forgotten.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I'm using 14.0 because I cant risk letting the IT department touch my laptop while I'm away onsite.
I deleted one of the "push button" objects and the "Get Result" button seems to work fine, see attached worksheet.
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Without hitting Ctrl F9 first? Strange, because it only works for me if I first hit Ctrl F9.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Richard Jackson wrote:
Without hitting Ctrl F9 first? Strange, because it only works for me if I first hit Ctrl F9.
I have just checked and if the data is within the screen when I left click on the mouse the button works, otherwise Ctrl F9 is needed. Either way this isn't a major issue.
Cheers
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Is there any way of using a data table with the global definition operator?
Check the attached. Isn't a data table like the mathcad table component but can help if the objective is using global assignations.
Regards. Alvaro.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
AlvaroDíaz wrote:
Is there any way of using a data table with the global definition operator?
Check the attached. Isn't a data table like the mathcad table component but can help if the objective is using global assignations.
Regards. Alvaro.
Alvaro,
I think Andrew was only asking to use the golden definition operator because he wants the table table to be at the bottom of his worksheet and then use the data above, which seems a little strange to me.
He could define his data in an Embedded Excel component and use the XL storage component which Tom created to called the data to the top of the worksheet or just use the example provided by Richard.
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Even the Bogus array is an oddity, it is native from mathcad and accept global definitions. Isn't like the table input, but I know kids that can program better interfaces for input arrays than the mathcad table component. Also don't need to activate scripts if your security level is at medium, and not disturbe the monster (excel, with their macros, addons, someones trials or free but with messages).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I know kids that can program better interfaces for input arrays than the mathcad table component.
I would agreee with that. You can find better grid controls that the Mathcad table component on the web, for free!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Alvaro,
Sorry for my ignorance, but could you explain how you created the "Bogus Array"?
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
MIke Armstrong wrote:
Alvaro,
Sorry for my ignorance, but could you explain how you created the "Bogus Array"?
Mike
Your ignorance? What about mine? See
http://communities.ptc.com/message/91325
Have not idea about hou create it, just copy, paste and edit to have another.
Regards. Alvaro.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Have not idea about hou create it, just copy, paste and edit to have another. Regards. Alvaro.
Cheers.
Could be useful, defiantly worth documenting.
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Have not idea about hou create it, just copy, paste and edit to have another.
Define a range variable with the number of entries desired:
i:1;9
Type
a[i:,
As soon as you type the comma you will get the "bogus array" with some empty placeholders. To get more placeholders put the cursor on an empty one and type another comma.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Cheers Richard.
It works - be perfect if columns could be added.
Any more secrect functions you would like to share?
Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Any more secrect functions you would like to share?
Not that I can think of. At least, not for 14. There were several threads about undocumented "features" in 11, but those features don't exist in 14. Which perhaps could serve as a lesson: don't use undocumented features unless there is absolutely no other way to achieve what is needed. Undocumented means unsupported, and unsupported means it may not exist in the next version!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Richard Jackson wrote:
Any more secrect functions you would like to share?
Not that I can think of. At least, not for 14. There were several threads about undocumented "features" in 11, but those features don't exist in 14. Which perhaps could serve as a lesson: don't use undocumented features unless there is absolutely no other way to achieve what is needed. Undocumented means unsupported, and unsupported means it may not exist in the next version!
Oh ! Richard,
Are you not confusing a bit between "undocumented" and "undemonstrated" ? Typically, Mathcad 11 and and previous versions were so poor in using the Maple symbolic that all what got developed in the forum are simply "undemonstrated". Many work sheets have the for loop argument "iter" [undocumented], if that is dropped, the matter is to recode if dropped in next versions: a no-sense to me. I bet the "BogusArray" works in 14/15 . I have tried to apply for collecting long plotting arguments but it refuses to understand my demand. There may be another "BogusPlot" missing . Sorry but can't recollect where to find the "iter" in the for loop.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Are you not confusing a bit between "undocumented" and "undemonstrated" ?
No. The meaning of "undocumented" is very clear. It means "not covered in the documentation".
Typically, Mathcad 11 and and previous versions were so poor in using the Maple symbolic that all what got developed in the forum are simply "undemonstrated".
The Maple commands are a good example. They were undocumented because they were not supposed to be available. They were available only because of an oversight, and that oversight was removed in version 12. So any worksheet that relied on them stopped working.
I bet the "BogusArray" works in 14/15.
Yes, but it is not covered anywhere in the documentation. At least, not that I know of. Maybe it was documented at one time, but if it was then that must have been a very long time ago. So if you use it your worksheet may not work in the next version of Mathcad.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Richard Jackson wrote:
Are you not confusing a bit between "undocumented" and "undemonstrated" ?
No. The meaning of "undocumented" is very clear. It means "not covered in the documentation".
Typically, Mathcad 11 and and previous versions were so poor in using the Maple symbolic that all what got developed in the forum are simply "undemonstrated".
The Maple commands are a good example. They were undocumented because they were not supposed to be available. They were available only because of an oversight, and that oversight was removed in version 12. So any worksheet that relied on them stopped working.
I bet the "BogusArray" works in 14/15.
Yes, but it is not covered anywhere in the documentation. At least, not that I know of. Maybe it was documented at one time, but if it was then that must have been a very long time ago. So if you use it your worksheet may not work in the next version of Mathcad.
You contradict your self a lot,
There is about no symbolic application in Mathcad 8 and 11 qs , but it has been used a lot by Mathsoft otherwise than in the list of functions. Example the PID qs . The BogusArray wasn't documented in 8 but used a lot in the 8 qs. About the Maple coding, do you mean only the symbolic drop down menu should have been available and what about the in-line menu and all these options ? And if a command line needs another gear available and another one and so on, each dependent coding has to work. To me there was a "gentleman agreement" between the two world top CAS designers Maple & Mathsoft, but cancelled by Maple when Mathcad switched ownership. The Mathcad 12 version you are referring is probably the version that Maple had returned to PTC, which version couldn't survive. The BogusArray is just a list to vector like stack converter, it does what HP is doing, but on screen.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
There is about no symbolic application in Mathcad 8 and 11 qs , but it has been used a lot by Mathsoft otherwise than in the list of functions. Example the PID qs . The BogusArray wasn't documented in 8 but used a lot in the 8 qs.
I looked, and version 8 didn't have the PID quicksheet. The PID quicksheet in version 11 does not contain any "bogus arrays".
About the Maple coding, do you mean only the symbolic drop down menu should have been available and what about the in-line menu and all these options ?
I was talking about the undocumented Maple functions such as numer and denom (which we got back in MC14, but were missing in MC12 and MC13).
