this is really nice package. If you are doing something complex like this, it would be great to have export to latex. We have just making fun with my colleagues that this is something all of as has written by themselves.
Another thing I would like would be highlighting of individual cells. For example to be able to highlight best value in a row. This is very useful when you are comparing different algorithms on different problems and you want to see, which one is the best one.
But DataFrames.jl does not allow to change to alignments of the cells, the format of the numbers that will be print, the color, etc. I see DataFrames as a container to store data. This simple package is just a βprinterβ for data.
For example, when I try to use DataFrames to do this, the headers of the tables cannot have spaces. Hence I decided to do something that is supposed only to print data of matrices. Makes sense?
Let me understand: do you mean create an interface to print DataTables or to add a interface equal to DataTables to print the information, so that we do not depend on DataTables?
This is very nice. Especially as table formats around have no good printing methods. Sometime I need to have data-frames only to get this functionalities and not for the processing of data. It means I do not have to do it anymore ? What functionalities do you want to offer with PrettyTables ?
From the other side, I am seeing lot of different table formats each trying to do same things. Somehow all this available Packages are generating confusion. Maybe this is due to my lower experience in Julia but I would assume it would be the same for other programming languages too.
Some consolidation of what is around feels to be necessary. Collecting the best features of different packages and having to import the wrapper packages which till take care of picking up the right functionalities.
This is due to a necessity I have. I need to print on the screen or save in a file the data of a table in a human-readable format. I also often need to print the data formatted, like with 3 decimal digits. This is what I want this package to do.
I am not planning to add functionality to compute things, like DataFrames.jl have, like mean, standard deviation, etc. I want that this package remains simple to just print data on screen or save on text files.
Anyway, I am open to the community feedback!
This is not like the same, each one has its good and bad side. IMHO, I like diversity in open-source environment (not duplication). It helps to improve the language. What you should do is to download and try to see what fits you best
If you find something that would be nice to add to a package that is already provided in another, then you can submit a PR or open an issue at this package to discuss the matter with the maintainers.
I really liked your suggestion. I have added support to what I called Highlighter. It is a structure that has three fields:
f: A function f(data,i,j) that should return true if the element (i,j) must be highlighted or false otherwise.
bold: If the highlight style should be bold.
color: The color of the highlight style.
Then we can have multiple highlight styles like in this example, in which I mark the maximum (blue) and minimum (red) values of the table considering the columns 1, 3, and 4:
Two questions (easily verifiable but I canβt test right now).
Does this implement the table interface (I believe TableTraits that many table packages use? I.e. if I put a DataFrame through this, will it pretty print?
In your code, I see you are using using Parameters, are you using any of the features that Parameters? As far as I know, @with_kw is now being tested in stdlib.
Ok, now we have an initial interface with Tables.jl. Thus, we can now pretty print DataFrames.jl. However, I am no expert on this API. Can anyone please test with other packages?