2017-11-20 1 views
0

ich ein Datum ähnlich zu haben,Identifizieren Sie die Zeichenfolge in Python Array

import numpy as np 
A = np.array([['1','2','3'], ['a','3','5']]) 

Jetzt mag ich die Adresse der Zelle von 'a' zu identifizieren. Ich habe den folgenden Code zu diesem Zweck versucht,

for i in range(0,2): 
    for j in range(0,3): 
     if (type(float(A[i,j])) == float): 
      print(str(i)+str(j)) 

da 'a' nicht in Gleitkomma umgewandelt werden kann zeigt die folgende Fehlermeldung.

00

01

02

Traceback (most recent call last):

File "", line 3, in

if (type(float(A[i,j])) == float):

ValueError: could not convert string to float: 'a'

Bitte helfen Sie. Vielen Dank im Voraus.

+0

Sie nicht verwenden müssen 'A [i] [j]' oder ist, dass einige Phantasie 'numpy' Magie? –

+0

Ihre Daten werden nur aus einem Zeichen bestehen? Dann könntest du 'isdigit' verwenden und so https://docs.python.org/3/library/stdtypes.html – fernand0

+0

@SumnerEvans das' __getitem__' von 'numpy' Arrays akzeptiert Tupel! – timgeb

Antwort

0

können Sie versuchen, diese

import numpy as np 

def is_number(s): 
    try: 
    int(s) 
    return True 
    except ValueError: 
    return False 

A = np.array([['1','2','3'], ['a','3','5']]) 

for i in range(0,2): 
    for j in range(0,3): 
     if not is_number(A[i][j]): 
      print i , j 
Verwandte Themen