472,794 Members | 1,775 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,794 software developers and data experts.

Making a time series analysis package in python - advice or assistancesought

Hi Folks

I am an old codger who has much experience with computers
in the distant past before all this object oriented stuff.
Also I have loads of software in such languages as FORTRAN
and BASIC, QBASIC etc that is very useful except that it
really doesn't like to run on modern operating systems and
has hopeless graphics resolution and lack of ease of use in
some ways.

My desire is to get all the facilities available in my
old programs working in a modern platform with flexible
and high-res graphics and easy to use. Ideally I might
find some good coders that are interested in the subject
who would assist me, alternatively some help in getting
started because there is so much info and so many resources
and libraries etc that I don't know where to start.

My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.
4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.

The applications of the package include:
1. Analysis of time series data from many branches of science.
2. Economic / business models including forecasting.
3. Markets, stocks, commodities forecasting.
4. Interdisciplinary causal analysis.
5. Many more

If you are seriously interested in this, then please contact
me by email at ray(at)tomes(dot)biz which is the email from
which this message was sent without the ".remove" part (anti-
spam measure).

Ray Tomes
http://ray.tomes.biz/
http://www.cyclesresearchinstitute.org/
Jul 7 '06 #1
5 3432
Hi Ray,

As a first step you might want to look at numpy/scipy/matplotlib

numpy (numpy.scipy.org) provides the underlying data structures (array
and matrices among other things) you require. This will handle all
your vector stuff, reading/writing to and from files, "loop macros",
etc.

scipy (www.scipy.org) provides a set of scientific programming
libraries, including stats, fft and many other things. Have a look
around and see if it already does what you want.

matplotlib (http://matplotlib.sourceforge.net/) takes care of all your
plotting needs, and plays nice with numpy and scipy.

HTH

Tim

On 7/7/06, Ray Tomes <ra*@tomes.remove.bizwrote:
Hi Folks

I am an old codger who has much experience with computers
in the distant past before all this object oriented stuff.
Also I have loads of software in such languages as FORTRAN
and BASIC, QBASIC etc that is very useful except that it
really doesn't like to run on modern operating systems and
has hopeless graphics resolution and lack of ease of use in
some ways.

My desire is to get all the facilities available in my
old programs working in a modern platform with flexible
and high-res graphics and easy to use. Ideally I might
find some good coders that are interested in the subject
who would assist me, alternatively some help in getting
started because there is so much info and so many resources
and libraries etc that I don't know where to start.

My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.
4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.

The applications of the package include:
1. Analysis of time series data from many branches of science.
2. Economic / business models including forecasting.
3. Markets, stocks, commodities forecasting.
4. Interdisciplinary causal analysis.
5. Many more

If you are seriously interested in this, then please contact
me by email at ray(at)tomes(dot)biz which is the email from
which this message was sent without the ".remove" part (anti-
spam measure).

Ray Tomes
http://ray.tomes.biz/
http://www.cyclesresearchinstitute.org/
--
http://mail.python.org/mailman/listinfo/python-list
Jul 7 '06 #2

"Ray Tomes" <ra*@tomes.remove.bizwrote in message
news:e8**********@lust.ihug.co.nz...
My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.
4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.
As Tim said, work with numpy/scipy. I believe it include programs or
modules to wrap Fortran and make Fortran function accessible from Python.
I believe these are the same as what they used for some of the functions
included.

If you find some broadly useful functions missing, consider making a
contribution. I know FFT is already included but I do not know about MESA.

Terry Jan Reedy

Jul 7 '06 #3
Ray Tomes:
My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.
4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.
It seems quite doable. Beside doing vector arithmetic with SciPy, and
plotting/generating graphs with MatPlotLib, you may need a GUI toolkit,
like Tkinter (built-in), wxpython, etc:
http://pythoncard.sourceforge.net/
http://www.wxpython.org/
etc.

Designing good GUIs requires some time.

The "Loop and macro facilities" can be done in Python itself.

To use Fortran from Python:
http://cens.ioc.ee/projects/f2py2e/

Bye,
bearophile

Jul 7 '06 #4
Ray Tomes wrote:
Hi Folks

I am an old codger who has much experience with computers
in the distant past before all this object oriented stuff.
Also I have loads of software in such languages as FORTRAN
and BASIC, QBASIC etc that is very useful except that it
really doesn't like to run on modern operating systems and
has hopeless graphics resolution and lack of ease of use in
some ways.
The Fortran code, which I assume is Fortran 77 or earlier, should run
fine on "modern operating systems" using free (g77, g95, or gfortran)
or commercial compilers.
My desire is to get all the facilities available in my
old programs working in a modern platform with flexible
and high-res graphics and easy to use. Ideally I might
find some good coders that are interested in the subject
who would assist me, alternatively some help in getting
started because there is so much info and so many resources
and libraries etc that I don't know where to start.

My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.
Fortran 90 and later versions have array operations, as does NumPy. You
could convert parts of the FORTRAN code to F90
4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.

The applications of the package include:
1. Analysis of time series data from many branches of science.
2. Economic / business models including forecasting.
3. Markets, stocks, commodities forecasting.
4. Interdisciplinary causal analysis.
5. Many more
There exist public domain codes for many of the topics you mention, and
I think several are part of NumPy. Many statistical algorithms are in
R, for which the underlying C and Fortran code is available. I suggest
that you identify which of your algorithms are not publicly available
and focus on those, making an R package of them. I am interested in
MESA. Then you can exploit the R graphics and language (called S) and
have your work easily accessible to many users.

Jul 7 '06 #5
In article <11*********************@s53g2000cws.googlegroups. com>,
<be*******@aol.comwrote:
>Ray Tomes wrote:
>Hi Folks

I am an old codger who has much experience with computers
in the distant past before all this object oriented stuff.
Also I have loads of software in such languages as FORTRAN
and BASIC, QBASIC etc that is very useful except that it
really doesn't like to run on modern operating systems and
has hopeless graphics resolution and lack of ease of use in
some ways.

The Fortran code, which I assume is Fortran 77 or earlier, should run
fine on "modern operating systems" using free (g77, g95, or gfortran)
or commercial compilers.
>My desire is to get all the facilities available in my
old programs working in a modern platform with flexible
and high-res graphics and easy to use. Ideally I might
find some good coders that are interested in the subject
who would assist me, alternatively some help in getting
started because there is so much info and so many resources
and libraries etc that I don't know where to start.

My package will have the following capabilities:
1. Able to read time series data in a variety of formats.
2. Able to create, manipulate and save time series files.
3. Able to do vector arithmetic on time series, including
dozens of functions.

Fortran 90 and later versions have array operations, as does NumPy. You
could convert parts of the FORTRAN code to F90
>4. Loop and macro facilities to simplify repetitive stuff.
5. Flexible high-resolution graphic presentation.
6. Built in functions to include:
FFT / fourier analysis, MESA / maximum entropy spectral analysis,
multiple regression, canonical correlation etc etc etc.
I have code for all these mostly in FORTRAN, some QBASIC.

The applications of the package include:
1. Analysis of time series data from many branches of science.
2. Economic / business models including forecasting.
3. Markets, stocks, commodities forecasting.
4. Interdisciplinary causal analysis.
5. Many more

There exist public domain codes for many of the topics you mention, and
I think several are part of NumPy. Many statistical algorithms are in
R, for which the underlying C and Fortran code is available. I suggest
that you identify which of your algorithms are not publicly available
and focus on those, making an R package of them. I am interested in
MESA. Then you can exploit the R graphics and language (called S) and
have your work easily accessible to many users.
The original poster has received much good advice. I'll reinforce
a couple of points:
1. Flexibility, high usability, and appealing
graphics indeed are worth the effort. They
can be achieved withOUT object orientation,
though, and you absolutely should consider
modernization of your existing *BASIC,
Fortran, and so on. Don't let lack of a
compiler block your progress; I'm sure we
can help locate appropriate ones for you.
2. Python is indeed a great vehicle for this
sort of work, as I've argued in the past
<URL: http://phaseit.net/claird/comp.progr...e_science.html >.
For your particular circumstances, though,
I applaud Mr. Beliavsky's suggestion that
you look into R <URL:
http://www-106.ibm.com/developerwork...ry/l-sc16.html >.
You might get even quicker satisfaction,
with a somewhat lower long-term ceiling,
through Yorick <URL: http://wiki.tcl.tk/yorick >.

I understand that you were thinking in terms of enlistment of fellow
developers. You might well be best off, though, with another round
of research and experimentation on your own.
Jul 7 '06 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: sdhyok | last post by:
Hi, I am trying to build up a system handling time series data a lot. Do you know any well-designed python class specially for time series data? Thanks in advance. Shin, Daehyok
4
by: Zach Shutters | last post by:
I am new to python and working my way through the van Rossum tutorial. I am cursios though about if you can program windows with python? I know I shouldn't worry about this right now but I am...
1
by: Kenneth McDonald | last post by:
I'm working on the 0.8 release of my 'rex' module, and would appreciate feedback, suggestions, and criticism as I work towards finalizing the API and feature sets. rex is a module intended to make...
11
by: fortepianissimo | last post by:
Say I have the following package organization in a system I'm developing: A |----B |----C |----D I have a module, say 'foo', that both package D and B require. What is the best practice in...
3
by: Thomas Nelson | last post by:
Sorry if this is a FAQ, but I couldn't find a good summary through google. What kinds of statistical analysis tools exist in python? I really just need t-tests, chi-squared test, and other such...
4
by: Chelonian | last post by:
I'm considering trying to learn Python for a specific reason, and hoped the group might help me get a sense for whether it would be worth my time. The situation... Me: total beginner w/ a...
0
by: krishnakant Mane | last post by:
hello all, I am struggling a bit in making python packages. when I am doing a project I want to create all my python modules inside a single package. I want to know when I make a package, what...
0
by: John Henry | last post by:
I am looking for a simple Python function for handling a set of time series data. For instance, I might have the following raw data (year's worth): 1/1/2005 12:00 AM 11.24 1/1/2005 12:10...
0
by: js | last post by:
By "package", I meant APT, Ports for BSD, MacPorts, etc. On Mon, Jun 16, 2008 at 1:16 AM, Jean-Paul Calderone <exarkun@divmod.comwrote:
0
by: erikbower65 | last post by:
Using CodiumAI's pr-agent is simple and powerful. Follow these steps: 1. Install CodiumAI CLI: Ensure Node.js is installed, then run 'npm install -g codiumai' in the terminal. 2. Connect to...
0
linyimin
by: linyimin | last post by:
Spring Startup Analyzer generates an interactive Spring application startup report that lets you understand what contributes to the application startup time and helps to optimize it. Support for...
0
by: kcodez | last post by:
As a H5 game development enthusiast, I recently wrote a very interesting little game - Toy Claw ((http://claw.kjeek.com/))。Here I will summarize and share the development experience here, and hope it...
0
by: Taofi | last post by:
I try to insert a new record but the error message says the number of query names and destination fields are not the same This are my field names ID, Budgeted, Actual, Status and Differences ...
0
by: Rina0 | last post by:
I am looking for a Python code to find the longest common subsequence of two strings. I found this blog post that describes the length of longest common subsequence problem and provides a solution in...
5
by: DJRhino | last post by:
Private Sub CboDrawingID_BeforeUpdate(Cancel As Integer) If = 310029923 Or 310030138 Or 310030152 Or 310030346 Or 310030348 Or _ 310030356 Or 310030359 Or 310030362 Or...
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
0
by: lllomh | last post by:
How does React native implement an English player?
0
by: Mushico | last post by:
How to calculate date of retirement from date of birth

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.