Ich arbeite an einem Projekt, bei dem wir zunächst die Daten filtern müssen, damit die ungültigen Daten entfernt werden. Dies bedeutet unter anderem, wenn eine der Zeilen in den Daten, die wir laden, Buchstaben/Wörter enthält, muss sie gelöscht werden. Reicht mein folgender Code aus?So entfernen Sie Zeilen, die Buchstaben oder Wörter enthalten
import numpy as np
def dataLoad(filename):
#The data is loaded and the variables are defined:
rawData=np.loadtxt('test.txt')
rawTemperature, rawGrowthrate, rawBacteria=np.loadtxt('test.txt',unpack=True)
print("You have choosen to work with the file {:s}".format(filename))
# Removeing unvalid data:
# Empty vector to save the invalid data in:
InvalidData=[]
# Vector with ones:
Erase=np.ones(len(rawData))
# The loop looks trough every datapoint in the matrix:
for i in range(len(rawData)):
# The rows in the Data that contains invalid data is inserted in Invalid Data
# And the ones in I'th place is switched to a zeroes.
if rawTemperature[i]<10 or rawTemperature[i]>60 or rawTemperature[i]==(""):
InvalidData.insert(i,'In line %d invalid Temperature' % (i+1))
Erase[i]=0
if rawGrowthrate[i]<0 or rawGrowthrate[i]==(""):
InvalidData.insert(i,'In line %d invalid Growth rate' % (i+1))
Erase[i]=0
if rawBacteria[i]<0 or rawBacteria[i]>4 or rawBacteria[i]==(""):
InvalidData.insert(i,'In line %d invalid Bacteria' % (i+1))
Erase[i]=0
Haben Sie es getestet? Besteht es diese Tests? – jonrsharpe
Was enthält test.txt? – Inconnu