3

Data is/are frequently transmitted as "tables", for example in CSV files or HTML <table> elements but although these may look similar they can have different implicit structures. For example:

    Height(cm) Weight (kg)
Pat    180       70
Sue    160       40
Jo     164       50

can be interpreted as an unordered list of objects (Person, with attributes height and weight), in a rectangular tables with homogeneous data columnwise.

In contrast, this is not a rectangular table, though it looks like one.

Dist(m)/Time(m)      Hull  Leeds London
Hull                   0.0   69    229
Leeds                  59    0.0   218
London                 186   201   0.0

It is actually the typographical composition of two related triangular matrices (distance and time of travel) between UK cities.

Are there data patterns (in the way that there are code patterns)? Other examples could be things such as TimeSeries, CorrelationMatrices, Histograms, etc. If these were declared or even empirically discoverable it would make reading and analysing them much easier.

UPDATE: Both @Kathiravel and @Jordão have given a wider (and valuable view). My original question was subconciously about data without reference to computer programs or databases. So whaqt I was trying to ask was "what types of implied data structure/pattern are in common use outside code/databases that has significantly different abstract structures"?

@Kathiravel's pointer is mainly to processes of managing data, and that's useful.

1
  • Why the downvote? If you don't know the shape of your data you can't write code. Seems in scope for SO Commented May 5, 2012 at 11:23

2 Answers 2

3

Finding the right data structure is as important as finding the right design pattern to use in a design. Depending on the way you want to access or store data, you'll find a myriad of data structures, from flat lists to quadtrees; that can make a significant difference in performance and maintainability of your algorithms.

You'll find a good list of data structures on Wikipedia. Your first table seems to represent a simple list of structured data (like a relational table), and your second example is more akin to an adjacency matrix, which is used to represent graphs.

Also, take a look at this answer for some pointers related to databases.

Sign up to request clarification or add additional context in comments.

1 Comment

+1 Thanks. Your points are valuable. I unconsciously have concentrated on data outside implementations in code and will revise the question.
1

Data patterns do exist. Hence the data mining and pattern recognition techniques exist, in finding the pattern of the given data.

http://msdn.microsoft.com/en-us/library/ff648420.aspx is no more maintained, yet provides some information on data patterns.

1 Comment

+1 - this is part of the overall picture. It seems to concentrate on processes rather than structure, but that's certainly important.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.