替换numpy 2D Array

时间:2015-10-15 20:41:03

标签: python arrays numpy

我有一个像这样的numpy 2D数组:

[['a', '(junk, b)', '(junk, c)'],
 ['d', '(junk, e)', '(junk, f)'],
 ['g', '(junk, h)', '(junk, i)']]

正如您所看到的,某些值在它们周围有一个括号,我想删除这些额外的值,以便我的新数组是:

[['a', 'b', 'c'],
 ['d', 'e', 'f'],
 ['g', 'h', 'i']]

我有一个正则表达式来获取我想要捕获的数据的匹配组但是在numpy中是否有一种干净的方法将regex应用于某些位置的某些值并返回我的新数组并替换了不需要的值?

1 个答案:

答案 0 :(得分:2)

您可以使用嵌套列表推导来使用while ( allMotorsLessThanMax( motors, countMotors )) { ... } 方法剥离项目:

bool allMotorsLessThanMax( Motor motors[], int countMotors ) {
   for ( int i = 0; i < countMotors; ++i ) {
     if ( maxcycle < motors[i].cycle ) {
         return false;
     }
  } 
  return true;
}

根据您的编辑,如果阵列中有额外的单词,您可以使用正则表达式匹配单个字符 :

    protected void onProgressUpdate(Integer... values) {
        super.onProgressUpdate(values);
        Log.i("makemachine", "onProgressUpdate(): " + 
        percentBar.setProgress((values[0] * 2) + "%");

    }