2010-03-23 34 views
0

給出一個字符數組:減少的字符數組的大小在numpy的

In [21]: x = np.array(['a  ','bb ','cccc ']) 

人們可以使用除去空白:

In [22]: np.char.strip(x) 
Out[22]: 
array(['a', 'bb', 'cccc'], 
     dtype='|S8') 

但是沒有一種方法能也縮小列的寬度到最小所需尺寸,在上述情況下|S4

+0

是'np.char'新?我的版本(1.3.0)在'char'中沒有任何東西,除了'chararray'。 – mtrw 2010-03-23 20:20:53

回答

1

你只是想改變數據類型?

import numpy as NP 
a = NP.array(["a", "bb", "ccc"]) 
a 
# returns array(['a', 'bb', 'ccc'], dtype='|S3') 
a = NP.array(a, dtype="|S8") # change dtype 
# returns array(['a', 'bb', 'ccc'], dtype='|S8') 

a = NP.array(a, dtype="|S3") # change it back 
# returns array(['a', 'bb', 'ccc'], dtype='|S3')  
0
>>> x = np.array(['a  ','bb ','cccc ']) 
>>> x = np.array([s.strip() for s in x]) 
>>> x 
array(['a', 'bb', 'cccc'], 
     dtype='|S4')