Via SQL query I produce a list
dblist = {{"ID", "One", "Two"}, {"C1", 10.24, 1.1123456*^10}, {"C2",
20.23, 1.9123456*^10}, {"C3", 3., 2.01123456*^10}, {"C4", 20.12,
17123456.}, {"C5", Null, 25123456.}, {"C6", 20., Null}};
like this and convert it into a dataset:
ds = Dataset[AssociationThread[First @ dblist, #] & /@ Rest@dblist]
Now, I'm rounding the values of "One" and produce a new dataset:
dblist[[All, 2]] = Round[dblist[[All, 2]], 1];
dblist[[1, 2]] = "One";
dsround = Dataset[AssociationThread[First @ dblist, #] & /@ Rest@dblist]
About the trouble with the Null I care later on. But now comes the part I don't understand. I'd like to write the values of "Two" in ScientificForm and ony one digit after the point. Hence, I apply the same procedure as before with the rounding:
dblist[[All, 3]] = ScientificForm[dblist[[All, 3]], 2];
dblist[[1, 3]] = "Two";
dsscform = Dataset[AssociationThread[First @ dblist, #] & /@ Rest@dblist]
But this does not work as expected:
Any ideas where my error in reasoning lies? Why do I get in every row the whole list?
I appreciate all hints and ideas.








Datasetwhich is infering types for presentation purposes. I would suggest to work withAssociationand useDatasetwhen you are going for presentation -- here you can build yourself a constructor to produce a dataset with scientific form output. I would also suggest to replaceNullwith something likeMissing[]which can be handled more easily. – gwr Jan 24 '19 at 12:02DatasetsBut only after my talk about the analysis next week... – Lea Jan 24 '19 at 12:11