如何将带有浮点数矩阵/表的简单文本文件加载到Scilab

时间:2016-05-18 13:20:11

标签: scilab

MATLAB和Octave使用加载并将内容传输到具有相同名称的矩阵变量中。 Scilab load命令不会执行相同操作。 loadmatfile也有不同之处。据说在某些网站上使用循环读取数据。在Scilab中将文本数据文件放入矩阵的最简单方法是什么?

我问过“计算科学”这个问题,但他们认为这是正确的地方。

我理解变量不需要为空。但它是一个文件,而不是一个变量。当我为文件名分配0时,它实际上删除了文件的内容并写了0给它?

我也理解必须首先打开文件。

我尝试了很多命令,我感到很困惑。在Matlab和Octave中它非常简单。

如果有人可以提出建议(实际代码),我可以发布结果。

1 个答案:

答案 0 :(得分:1)

fscanfMat

fscanfMat正是您要找的。

给出下面的文件(my_data.txt):

public function store(Request $request){
  $rules = [
    'name' => ['required'],
    'surname' => ['required'],
    'mac_address' => ['required','min:17','max:17','unique:registrations'],
    'phone' => ['between:9,11'],
  ];

  $this->validate($request,$rules);

  $mac_address = $request->input('mac_address');

  $registration = Registration::create($request->all());

$id = Registration::select('id')
              ->where('mac_address',$mac_address)
              ->get();

    return redirect('registration') -> with("message","Your ID :",$id);
}

以下内容将打印出来:

 my comment about my data
 0.91  0.82  0.86  0.67  0.30 
 0.55  0.06  0.25  0.34  0.53 
 0.60  0.11  0.48  0.90  0.12 
 0.93  0.23  0.68  0.07  0.85 
 0.93  0.86  0.86  0.69  0.09 

注意

  • 如果请求,文件的第一个非数字行将以文本形式返回(例如,对于任何注释,都是可选的)
  • 所有剩余的行必须具有相同的列数。
  • 假设列分隔符为空格或制表符,如果两者都有,则默认选择空格。
  • 矩阵的列数将遵循文件中找到的列数。
  • 通过检测输入文件中的eof来获取行数。
  • 它支持编码为ANSI / ASCII和UTF-8的文件。
  • 您可以选择使用格式字符串控制解析(请参阅scanf_conversion docs)