From: Preben Randhol <randhol+cla@pvv.org>
To: Jacob Sparre Andersen <sparre@nbi.dk>
Cc: comp.lang.ada@ada-france.org
Subject: Re: Data table text I/O package?
Date: Wed, 15 Jun 2005 18:17:06 +0200
Date: 2005-06-15T18:17:06+02:00 [thread overview]
Message-ID: <mailman.43.1118852245.17633.comp.lang.ada@ada-france.org> (raw)
In-Reply-To: <m2hdfzek8i.fsf@hugin.crs4.it>
On Wed, Jun 15, 2005 at 05:02:37PM +0200, Jacob Sparre Andersen wrote:
> Preben Randhol wrote:
> > Jacob Sparre Andersen <sparre@nbi.dk> wrote on 15/06/2005 (13:38) :
>
> > > The important part is to have the checking of the headers and the
> > > generation of Put_Line and Get_Line procedures automated based on
> > > a record type (and not too much more). Since I need records (for
> > > type checking) and not just simple arrays, I can't manage with a
> > > generic package, but have to put some code generation into the
> > > system (or can I play some tricks with streams?).
> >
> > So the header might be:
> >
> > Integer Float Text
>
> Not quite. The headers would be field names, not just types. I.e.:
>
> Gene ID p-value Expression-level Description Human cromosome
> GE29031 0.04539 245.45 Cyclin-B1 17
>
> > and the data could be:
> >
> > 1 0.9 Start point
> > 2 0.3 Minimum
> > 3 6.0 End point
> >
> > and then you want to check the data and validate that they are of
> > the correct type as indicated by the header? To generate the header
> > you want that the package finds out which type a certain data type
> > is and output this type in the header?
>
> Sort of. Except that I would use the names of the fields in the
> record and not just the types of the fields.
>
> One of my problems is that I have different kinds of files (in terms
> of meaning of the numbers) where the types for all practical purposes
> are the same.
So you have different files with for example p-value, and in all the
p-value is a float?
If so, then I would have made a map something like:
Gene => "Text"
ID => "Float"
p-value => "My_Float" (In case you have a special type)
Expression-level => "Text"
Description => "Text"
Human cromosome => "Text"
...
and when you read in the values you can do a
Is_Valid_Type (Column_Type : String; Value : String) return Boolean
is
begin
if Column_Type = "Float" then
declare
F : Float := Float'Value (Value);
begin
return true;
exception
when => others
return false;
end;
elsif Column_Type = "Integer" then
...
--
Preben Randhol -------------- http://www.pvv.org/~randhol/Ada95 --
"Have another drink, not-Corporal Nobby?" said Sergeant Colon unsteadily.
"I do not mind if I do, not-Sgt Colon," said Nobby.
-- The joys of working undercover
(Terry Pratchett, Guards! Guards!)
next prev parent reply other threads:[~2005-06-15 16:17 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-15 9:57 Data table text I/O package? Jacob Sparre Andersen
2005-06-15 11:43 ` Preben Randhol
2005-06-15 13:35 ` Jacob Sparre Andersen
2005-06-15 14:12 ` Preben Randhol
2005-06-15 15:02 ` Jacob Sparre Andersen
2005-06-15 16:17 ` Preben Randhol [this message]
2005-06-15 16:58 ` Dmitry A. Kazakov
2005-06-15 17:30 ` Marius Amado Alves
2005-06-15 18:41 ` Dmitry A. Kazakov
2005-06-15 19:09 ` Marius Amado Alves
2005-06-15 18:58 ` Randy Brukardt
2005-06-16 9:55 ` Jacob Sparre Andersen
2005-06-16 10:53 ` Marius Amado Alves
2005-06-16 12:24 ` Robert A Duff
2005-06-16 14:01 ` Georg Bauhaus
2005-06-16 12:27 ` Dmitry A. Kazakov
2005-06-16 14:46 ` Georg Bauhaus
2005-06-16 14:51 ` Dmitry A. Kazakov
2005-06-20 11:19 ` Georg Bauhaus
2005-06-20 11:39 ` Dmitry A. Kazakov
2005-06-20 18:25 ` Georg Bauhaus
2005-06-20 18:45 ` Preben Randhol
2005-06-20 18:54 ` Dmitry A. Kazakov
2005-06-21 9:24 ` Georg Bauhaus
2005-06-21 9:52 ` Jacob Sparre Andersen
2005-06-21 11:10 ` Georg Bauhaus
2005-06-21 12:35 ` Jacob Sparre Andersen
2005-06-21 10:42 ` Dmitry A. Kazakov
2005-06-21 11:41 ` Georg Bauhaus
2005-06-21 12:44 ` Dmitry A. Kazakov
2005-06-21 21:01 ` Georg Bauhaus
2005-06-22 12:15 ` Dmitry A. Kazakov
2005-06-22 22:24 ` Georg Bauhaus
2005-06-23 9:03 ` Dmitry A. Kazakov
2005-06-23 9:47 ` Georg Bauhaus
2005-06-23 10:34 ` Dmitry A. Kazakov
2005-06-23 11:37 ` Georg Bauhaus
2005-06-23 12:59 ` Dmitry A. Kazakov
2005-06-23 14:16 ` Marc A. Criley
2005-06-25 16:38 ` Simon Wright
2005-06-16 13:26 ` Marius Amado Alves
2005-06-16 18:10 ` Georg Bauhaus
2005-06-30 3:02 ` Randy Brukardt
2005-06-30 18:43 ` Jacob Sparre Andersen
2005-07-01 1:22 ` Randy Brukardt
2005-07-01 3:01 ` Alexander E. Kopilovich
2005-07-01 5:59 ` Jeffrey Carter
2005-07-02 1:54 ` Randy Brukardt
2005-07-02 10:24 ` Dmitry A. Kazakov
2005-07-06 22:04 ` Randy Brukardt
2005-06-30 19:24 ` Björn Persson
2005-07-01 0:54 ` Randy Brukardt
2005-07-01 21:36 ` TSV and CSV Björn Persson
2005-07-01 22:08 ` Martin Dowie
2005-07-02 0:05 ` Georg Bauhaus
2005-07-02 1:10 ` Randy Brukardt
2005-07-02 1:20 ` Ed
2005-07-03 9:08 ` Georg Bauhaus
2005-07-02 0:07 ` Data table text I/O package? Georg Bauhaus
2005-07-02 1:21 ` Randy Brukardt
[not found] ` <20050615141236.GA90053@pvv.org>
2005-06-15 15:40 ` Marius Amado Alves
2005-06-15 19:18 ` Oliver Kellogg
2005-06-17 9:02 ` Jacob Sparre Andersen
[not found] ` <7adf1648bb99ca2bb4055ed8e6e381f4@netcabo.pt>
2005-06-15 15:46 ` Preben Randhol
[not found] ` <20050615154640.GA1921@pvv.org>
2005-06-15 16:14 ` Marius Amado Alves
[not found] ` <f04ccd7efd67fe197cc14cda89340779@netcabo.pt>
2005-06-15 16:20 ` Preben Randhol
2005-06-15 19:30 ` Simon Wright
2005-06-15 22:40 ` Lionel Draghi
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox