I leveraged the pandas package here, because it is internally used by the pyntcloud package (and will be automatically installed with pip install pyntcloud).
I've also considered other libraries than pyntcloud.
For example, in the past I've used plyfile, which has no other dependencies. However, the interface of plyfile is really convoluted and a lot of custom code is required for writing points from and to plyfiles. See this this file for example. In addition, I've read that pyntcloud is three times faster.
I also considered Open3D for reading/writing ply files. However, Open3D does not support to configure the types in the generated output file (32 bit float vs 64 bit float). Thus, with Open3D it is not possible to compare the results, i.e.
assert filecmp.cmp(path_to_fused_ply_input, path_to_fused_ply_output)
assert filecmp.cmp(path_to_fused_ply_vis_input, path_to_fused_ply_vis_output)
Thus, I think that the pyntcloud package is a valid choice - and therefore the usage of pandas not too bad. What do you think?