我将以这种方式将数据从mathematica导出到具有“dat”扩展名的文件。
numbercount=0;
exporttable =
TableForm[
Flatten[
Table[
Table[
Table[{++numbercount, xcord, ycord, zcord}, {xcord, 0, 100, 5}],
{ycord, 0, 100, 5}],
{zcord,10, 100, 10}],
2]];
Export["mydata.dat", exporttable]
现在发生的是“mydata.dat”文件输出如下所示
1 0 0 10
2 5 0 10
3 10 0 10 and so on
但我希望数据在“mydata.dat”文件中显示如下。
1, 0, 0, 10
2, 5, 0, 10
3, 10, 0, 10 and so on
如果你是观察者,我想在每个第一,第二和第三个数字之后使用逗号,但不要在每行的第四个数字之后。
我尝试过这段代码,它在数字之间插入逗号但由于我需要输出大量数据,因此需要很长时间才能运行。我也觉得有人可能会想出更好的解决方案。
numbercount=0;
exporttable =Flatten[
Table[
Table[
Table[{++numbercount, xcord, ycord, zcord}, {xcord, 0, 100, 5}],
{ycord, 0, 100, 5}],
{zcord,10, 100, 10}],
2];
x = TableForm[Insert[
exporttable[[i]], ",", {{2}, {3}, {4}}], {i, 1, Length[exporttable]}];
Export["mydata.dat", x]
答案 0 :(得分:9)
您是否尝试将其导出为CSV文件? Export
的第三个参数是文件类型,因此您需要键入
Export["mydata.dat", x, "CSV"]
要添加到此,Mathematica中的可用格式为categorical list和alphabetical list。
答案 1 :(得分:2)
另外请注意,您只能使用一个Table
命令构建列表,而没有明确的索引变量:
exporttable1 = MapIndexed[Join[#2, #1] &,
Flatten[Table[{xcord, ycord, zcord},
{zcord, 10, 100, 10},
{ycord, 0, 100, 5},
{xcord, 0, 100, 5}], 2]]
exporttable1 == exporttable
(*
-> True
*)