0
我試圖將R中的數字向量傳遞給PHP中的數組。將R向量傳遞給PHP數組
index.php:
<?php
$n = 3;
$out = array();
exec("Rscript script.R $n", $out);
$length = count($out);
echo "length = ".$length."<br>";
for($i = 0; $i < $length; $i++)
echo "out[$i] = ".$out[$i]
?>
script.R:
#!/usr/bin/env Rscript
i <- as.numeric(commandArgs(TRUE))
print(i:10)
輸出:
length = 1
out[0] = [1] 3 4 5 6 7 8 9 10
正如可以從上面的輸出看,PHP是存儲A R矢量作爲一個單獨的元件陣列。如何在PHP數組中存儲R向量的各個元素?
你可以做'$ OUT =爆炸(」」,$出來[0]);'你exec語句後,使它成爲一個真實的數組,並在正確的位置添加實際元素。 – Dimi
@Dimi我如何擺脫空值? 'explode'後面的輸出是:out [0] = [1] out [1] = out [2] = 3out [3] = out [4] = 4out [5] = out [6] = 5out [7] = out [8] = 6out [9] = out [10] = 7out [11] = out [12] = 8out [13] = out [14] = 9out [15] = 10' '不想要最初的'[1]'。實際向量從'3'開始, – rootkea
可以使用array_filter命令來清除空值。你可以添加你自己的過濾器,它會刪除你不喜歡的值。或者只是'unset($ out [0]); unset($ out [1]); unset($ out [2]);' – Dimi