-2

我有一组来自文本文件的数据点 (x_i,y_i)。如何编写读取这些数据、将数据发送到 Sage、计算 Pearson 相关性并将结果发送回 C 的 C 程序。我不知道如何使用 C 向某些 Linux 程序提供输入并读取它的输出到一个变量。

4

1 回答 1

0

好的,让我直截了当地说:您正在编写一个 C 程序,并且在该程序中您需要计算 Pearson 的相关系数。您希望将这些计算传递给 Sage,而不是自己编写代码。

现在,我不知道 Sage,但我想可以从命令行运行它。假设您可以为 Sage 准备一个或多个输入文件,并在 Sage 中运行计算并生成输出,然后我将使用systemfrom stdlib.h ( man 3 system) 调用命令行。以下是 C 程序中步骤的概要:

  1. 为 Sage 的输入和输出准备临时文件
  2. 构建 Sage 的命令行
  3. 使用 system() 运行命令行
  4. 解析 Sage 存储其输出的临时文件名。

也就是说,我不会使用 Sage 来做这件事。Pearson 相关系数在 C 中很容易实现,如果您这样做,您的程序将不依赖于整个 Sage 安装。

于 2012-10-12T07:56:27.257 回答