以Python numpy.ndarray的形式读取此类型的txt文件

时间:2018-03-25 12:22:00

标签: python arrays file numpy delimiter

我想在数据集data.txt上执行一些降维(DR)方法,如PCA,ICA和tSNE,或者LEM,以比较这些方法。

因此,我需要将数据作为numpy.ndarray读入。 每一行对应矩阵中的一行,分隔符=' '

或者,我现在将文件作为numpy.array,但作为字符串:

  

[' 16.72083152 \ t12.91868366 \ t14.37818919 \ n'   ...   ' 16.9504402 \ t7.81951173 \ t12.81342726']

如何快速将其转换为所需格式的numpy.array:n x 3,行的分隔符=' ',每行中元素之间的分隔符=' \ t'砍掉' \ n'最后?

快速回答非常感谢。其他提示也是如此。谢谢!

2 个答案:

答案 0 :(得分:2)

这应该这样做

function myrand() {
    MIN=$1
    MAX=$2
    DELTA=$(( $MAX - $MIN ))
    R=$(( $MIN + $(( RANDOM % $DELTA )) ))
    echo $R
}
echo $(( -1 * $(myrand 6 72) ))
echo $(myrand 4, 42)

答案 1 :(得分:2)

你可以尝试下面的代码:

DECLARE
 v_obj tema4.obj;
 v_listObj tema4.listObj;
BEGIN
 FOR v_i IN (SELECT ID,BURSA FROM STUDENTI ORDER BY ID) LOOP
  v_obj.id := v_i.id;
  v_obj.percent := 50;
  v_listObj(v_i.id) := v_obj;
 END LOOP;
 FOR v_i IN v_listObj.FIRST..v_listObj.LAST LOOP
  DBMS_OUTPUT.PUT_LINE(v_listObj(v_i).id || ' - ' || 
  v_listObj(v_i).percent);
 END LOOP;
 tema4.ex1(v_listObj); --this line is with problems
END;