BorgwardtLab / proteinshake

Protein structure datasets for machine learning.
https://proteinshake.ai
BSD 3-Clause "New" or "Revised" License
99 stars 8 forks source link

to_point() error #181

Closed cgoliver closed 1 year ago

cgoliver commented 1 year ago
>>> from proteinshake.datasets import RCSBDataset
>>> da = RCSBDataset(root="./data")
>>> da.to_point()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/datasets/dataset.py", line 449, in to_point
    return PointDataset((transform(p) for p in proteins),
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/representations/point.py", line 46, in __init__
    self.size = len(proteins)
TypeError: object of type 'generator' has no len()
>>> 
cgoliver commented 1 year ago
>>> da.to_graph(eps=9)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/datasets/dataset.py", line 432, in to_graph
    return GraphDataset((transform(p) for p in proteins),
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/representations/graph.py", line 74, in __init__
    self.size = len(proteins)
TypeError: object of type 'generator' has no len()
>>> da.to_voxel()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/datasets/dataset.py", line 466, in to_voxel
    return VoxelDataset((transform(p) for p in proteins),
  File "/Users/cgonzalez/Projects/proteinshake/proteinshake/representations/voxel.py", line 89, in __init__
    self.size = len(proteins)
TypeError: object of type 'itertools._tee' has no len()
>>> 
cgoliver commented 1 year ago

probably just needs a new data release.. checked the Generator() logic and it should work.

timkucera commented 1 year ago

should be fixed with the new release