473,398 Members | 2,427 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,398 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 3494
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: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

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.