Illumina / interop

C++ Library to parse Illumina InterOp files
http://illumina.github.io/interop/index.html
GNU General Public License v3.0
75 stars 26 forks source link

python tutorials are still Python2 #332

Closed nick-youngblut closed 10 months ago

nick-youngblut commented 10 months ago

The python tutorials at https://github.com/Illumina/interop/tree/master/docs/src/ are still Python v2. For example:

print "\n".join([method for method in dir(lane_summary) if not method.startswith('_') and method not in ("set", "push_back", "reserve", "this", "resize", "clear", "sort")])

Moreover, such long list comprehensions, as shown above (or the one below), are very hard to read:

d = []
for label, func in columns:
    d.append( (label, pd.Series([getattr(lane_summary.at(i), func)() for i in range(lane_summary.size())], index=[lane_summary.at(i).id() for i in range(lane_summary.size())])))
df = pd.DataFrame.from_items(d)
df

Why use such complex list comprehensions in a tutorial?

ezralanglois commented 10 months ago

I can remove these examples and update the links to the new Python 3 ones.

https://illumina.github.io/interop/namespacecore.html

nick-youngblut commented 10 months ago

Is python_binding.md the only remaining example?

It would be helpful to have an example of specifying the specific input files that are required versus the the run folder:

  from interop import *
  ar = imaging("path/to/run_folder")

given that specifying the specific required input files is much preferred for pipeline software (e.g., Nextflow or Snakemake).

nick-youngblut commented 10 months ago

FYI: all of the links under "Introductory Tutorials" at https://illumina.github.io/interop/python_binding.html are now broken.

ezralanglois commented 9 months ago

Yes, I removed them, but have not tagged a new build yet. That will update with the. new tag.